简体   繁体   English

{org.wso2.andes.client.AMQConnection} - 在迁移到 WSO2 API Manager 2.1.0 后无法连接到代理

[英]{org.wso2.andes.client.AMQConnection} - Unable to connect to broker at After migrating to WSO2 API Manager 2.1.0

I migrated to API Manager 2.1.0 with Identity server as key manager 5.3.0.我使用身份服务器迁移到 API Manager 2.1.0 作为密钥管理器 5.3.0。 I followed the document https://docs.wso2.com/display/AM210/Upgrading+from+the+Previous+Release+when+WSO2+IS+is+the+Key+Manager I have custom domain name mapped to all url.我按照文档https://docs.wso2.com/display/AM210/Upgrading+from+the+Previous+Release+when+WSO2+IS+is+the+Key+Manager我有自定义域名映射到所有 url .

I have the below error in WSO2 API manager logs when i try to hit an API.当我尝试访问 API 时,WSO2 API 管理器日志中出现以下错误。 How to debug this?which file should be the culprit?如何调试这个?哪个文件应该是罪魁祸首? In earlier version , i faced this issue when i missed to update jndi.properties.But that is done properly here as below.在早期版本中,当我错过更新 jndi.properties 时,我遇到了这个问题。但是在这里正确完成,如下所示。

    # connectionfactory.[jndiname] = [ConnectionURL]
connectionfactory.TopicConnectionFactory = amqp://admin:admin@clientid/carbon?brokerlist='tcp://mydevwso2.ca:5672'

connectionfactory.QueueConnectionFactory = amqp://admin:admin@clientID/test?brokerlist='tcp://mydevwso2.ca:5672'

What could cause the below error?什么可能导致以下错误?

 Caused by: org.wso2.andes.AMQConnectionFailureException: Could not open connection
    at org.wso2.andes.client.AMQConnection.<init>(AMQConnection.java:486)
    at org.wso2.andes.client.AMQConnectionFactory.createConnection(AMQConnectionFactory.java:351)
    ... 13 more
Caused by: org.wso2.andes.transport.TransportException: Could not open connection
    at org.wso2.andes.transport.network.mina.MinaNetworkTransport$IoConnectorCreator.connect(MinaNetworkTransport.java:216)
    at org.wso2.andes.transport.network.mina.MinaNetworkTransport.connect(MinaNetworkTransport.java:74)
    at org.wso2.andes.client.AMQConnectionDelegate_8_0.makeBrokerConnection(AMQConnectionDelegate_8_0.java:130)
    at org.wso2.andes.client.AMQConnection$2.run(AMQConnection.java:631)
    at org.wso2.andes.client.AMQConnection$2.run(AMQConnection.java:628)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.wso2.andes.client.AMQConnection.makeBrokerConnection(AMQConnection.java:628)
    at org.wso2.andes.client.AMQConnection.<init>(AMQConnection.java:409)
    ... 14 more
TID: [-1] [] [2017-11-14 14:12:08,925] ERROR {org.wso2.carbon.event.output.adapter.jms.internal.util.JMSMessageSender} -   {org.wso2.carbon.event.output.adapter.jms.internal.util.JMSMessageSender}
java.lang.NullPointerException
    at org.wso2.carbon.event.output.adapter.jms.internal.util.JMSMessageSender.send(JMSMessageSender.java:88)
    at org.wso2.carbon.event.output.adapter.jms.JMSEventAdapter$JMSSender.run(JMSEventAdapter.java:284)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
TID: [-1] [] [2017-11-14 14:12:22,207]  INFO {org.wso2.andes.client.AMQConnection} -  Unable to connect to broker at tcp://mydevwso2.ca:5672 {org.wso2.andes.client.AMQConnection}
org.wso2.andes.transport.TransportException: Could not open connection
    at org.wso2.andes.transport.network.mina.MinaNetworkTransport$IoConnectorCreator.connect(MinaNetworkTransport.java:216)
    at org.wso2.andes.transport.network.mina.MinaNetworkTransport.connect(MinaNetworkTransport.java:74)
    at org.wso2.andes.client.AMQConnectionDelegate_8_0.makeBrokerConnection(AMQConnectionDelegate_8_0.java:130)
    at org.wso2.andes.client.AMQConnection$2.run(AMQConnection.java:631)
    at org.wso2.andes.client.AMQConnection$2.run(AMQConnection.java:628)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.wso2.andes.client.AMQConnection.makeBrokerConnection(AMQConnection.java:628)
    at org.wso2.andes.client.AMQConnection.<init>(AMQConnection.java:409)

Check whether the super admin user credentials are correct in the jndi.properties file and also in the api-manager.xml file.检查jndi.properties文件和api-manager.xml文件中的超级管理员用户凭据是否正确。 In the api-manager.xml file, the relevant configuration can be seen similar to the below example (credentials can be different).api-manager.xml文件中,可以看到相关配置类似于下面的示例(凭据可以不同)。

<JMSConnectionParameters>
    <transport.jms.ConnectionFactoryJNDIName>TopicConnectionFactory</transport.jms.ConnectionFactoryJNDIName>
    <transport.jms.DestinationType>topic</transport.jms.DestinationType>
    <java.naming.factory.initial>org.wso2.andes.jndi.PropertiesFileInitialContextFactory</java.naming.factory.initial>
    <connectionfactory.TopicConnectionFactory>amqp://admin:admin2@clientid/carbon?brokerlist='${jms.url}'</connectionfactory.TopicConnectionFactory>
</JMSConnectionParameters>

I could observe the same issue as you, resulting in:我可以观察到与您相同的问题,导致:

org.wso2.andes.AMQConnectionFailureException: Could not open connection ..) org.wso2.andes.AMQConnectionFailureException: 无法打开连接 ..)

I was able to resolve by changing the above configurations to the correct super admin user credentials.我能够通过将上述配置更改为正确的超级管理员用户凭据来解决。 The correct admin user credentials can be found from the <APIM_Home>/repository/conf/usr-mgt.xml file.可以从<APIM_Home>/repository/conf/usr-mgt.xml文件中找到正确的管理员用户凭据。 An example configuration is as follows:示例配置如下:

 <AdminUser>
     <UserName>admin</UserName>
     <Password>admin2</Password>
 </AdminUser>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM