You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by keith chapman <ke...@gmail.com> on 2008/08/03 16:15:39 UTC

JMS endpoint address always returns null

Hi all,

I was playing around with axis2 1.4.1-RC1 and noticed that when the JMS
transport is configured the endpoint address is null. Whereas it should have
been something like
location="jms:/myService?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactory&java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory&java.naming.provider.url=tcp://localhost:61616/".
I tried debigging through and figured out that this occurs due to this bit
of code in the AxisEndpoint class,

                     // we should pass [serviceName].[endpointName] instead
of
                    // [endpointName]
                    String sDOTe = serviceName + "." + name;
                    EndpointReference[] eprsForService = listener
                            .getEPRsForService(sDOTe, ip);

In here we ask the listner the endpoint address using
serviceName.endpointName but the JMSListener keeps this mapping using the
serviceName hence the above returns null always.

How could we solve this issue? I don't think we can creates destination
addresses as serviceName.endpointName for each endpoint but rather create
just one destination and use the same address for all endpoints.

WDYT? Also I think this is something that should be fixed for 1.4.1. I
already filed a JIRA on this (
https://issues.apache.org/jira/browse/AXIS2-3961)

Thanks,
Keith.

-- 
Keith Chapman
Senior Software Engineer
WSO2 Inc.
Oxygenating the Web Service Platform.
http://wso2.org/

blog: http://www.keith-chapman.org