Service Bus på Windows Server (1.1) ved hjælp af Java og AMQP 1.0 Timeout-udgave

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg skrev et testprogram baseret på nedenstående eksempel for at oprette forbindelse til service bus (1.1) installeret på windows server ved hjælp af amqp 1.0 java api.


https://msdn.microsoft.com/en-us/library/dn574799.aspx?f=255u0026amp;MSPPError=-2147217396[4]


Alt er fint til session oprettelse. Jeg får 'Peer skabte ikke fjern endepunkt for link, mål' undtagelse, da jeg forsøgte at oprette MessageProducer. Jeg brugte forskellige versioner af qpid-amqp-1-0 (0,20 til 0,32), men fejlen er den samme.


Jeg sætter nogle debug udsagn i kildekoden for qpid-amqp, og jeg observerede SendingLinkEndPoint Target blev null efter få sekunder.


End point target: Target{address=testnamespace/testqueue}
End point target: Target{address=testnamespace/testqueue}
End point target: Target{address=testnamespace/testqueue}
End point target: Target{address=testnamespace/testqueue}
Attach{name=testnamespace/testqueue}

End point target: null

javax.jms.JMSException: Peer did not create remote endpoint for link,    target: testnamespace/testqueue

RECV: com.microsoft:timeoutxa1xbcThe operation did not complete within the allocated time 00:00:15.0675072 for object connection


Jeg sørgede for, at brugeren fik domæne-suffiks som pr. Post


Tilslutning til Service Bus på Windows Server (1.1) ved hjælp af Java og AMQP 1.0


Jeg aktiverede qpid jms debug i log4j.properties, men jeg kan ikke se nogen fejlretningsudsagn, der vises på konsollen. Ikke sikker på, hvad jeg skal gøre for at se, hvilken anden bruger, oberved (i ovenstående indlæg).


log4j.rootLogger=TRACE, stdout

log4j.logger.org.apache.qpid.jms=DEBUG

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=\%d [\%-15.15t] - \%-5p\%-30.30c{1} - \%m\%n


testkode ser ud som nedenfor





String connectionString = "amqps://" + encode(userName) + ":" + encode(password) + "@" + fqdn;

Hashtable<String, String> env = new Hashtable<String, String>();
env.put(Context.INITIAL\_CONTEXT\_FACTORY,     "org.apache.qpid.amqp\_1\_0.jms.jndi.PropertiesFileInitialContextFactory");
env.put(Context.PROVIDER\_URL, "blah.txt");
env.put("connectionfactory.ServiceBusConnectionFactory", connectionString);
Context context = null;
ConnectionFactory connectionFactory = null;

Connection connection = connectionFactory.createConnection();                          

System.setProperty("javax.net.ssl.trustStore","C:\Program Files (x86)\Java\jre1.8.0\_111\lib\security\cacerts");

System.setProperty("javax.net.ssl.trustStorePassword",pwd);

Session session = null;
MessageProducer producer = null;

try
{
    System.out.println("Creating session
");
    session = connection.createSession(false, Session.AUTO\_ACKNOWLEDGE);                

    System.out.println("Creating Queue Impl
");
    QueueImpl queueImpl = QueueImpl.createQueue("testnamespace/testqueue");                        

    System.out.println("Creating producer
");
    producer = session.createProducer(queueImpl);

}
catch (Exception e)`enter code here`
{
    System.out.println("Exception creating session/producer
");
    return;
}


Alle de nødvendige porte åbnes og aktiveres debug/trace på windows serviceniveau i hændelsesviseren, men jeg kan ikke identificere hvad der er problemet.


Enhver hjælp ville blive meget værdsat.


Tak skal du have,
S.

Bedste reference