14 nov. 2007 11:07:14
org.apache.axis2.transport.jms.JMSOutTransportInfo getDestination
ATTENTION: Cannot get or lookup JMS destination :
MyService from url :
jms:/MyService?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactory&java.naming.provider.url=""
: MyService
14 nov. 2007 11:07:45
org.apache.axis2.transport.jms.JMSSender invoke
ATTENTION: Did not receive a JMS response within
30000 ms to destination : queue://MyService
org.apache.axis2.AxisFault:
The input stream for an incoming message is null.
at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:61)
at
org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:356)
at
org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:294)
at clientstub.MyServiceMyServiceSOAP12Port_jmsStub.AddNumbers(MyServiceMyServiceSOAP12Port_jmsStub.java:165)
at service.Client.test(Client.java:27)
at
service.Client.main(Client.java:40)
For information, here are my
services.xml and a the part of axis2.xml dealing with JMS transport:
services.xml
<!-- This file was auto-generated
from WSDL -->
<!-- by the Apache Axis2 version:
#axisVersion# #today# -->
<serviceGroup>
<service name="MyService">
<transports>
<transport>jms</transport>
</transports>
<messageReceivers>
<messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"
/>
</messageReceivers>
<parameter name="ServiceClass" locked="false">
Server.MyService
</parameter>
<parameter name="useOriginalwsdl" locked="false">
false
</parameter>
<parameter name="modifyUserWSDLPortAddress" locked="false">
true
</parameter>
<operation name="addNumbers"
mep="http://www.w3.org/ns/wsdl/in-out">
<actionMapping>urn:addNumbers</actionMapping>
<outputActionMapping>urn:addNumbers</outputActionMapping>
</operation>
</service>
</serviceGroup>
axis2.xml
...
<transportReceiver name="jms"
class="org.apache.synapse.transport.jms.JMSListener">
<parameter name="myTopicConnectionFactory">
<parameter name="java.naming.factory.initial">
org.apache.activemq.jndi.ActiveMQInitialContextFactory
</parameter>
<parameter name="java.naming.provider.url">
tcp://localhost:61616
</parameter>
<parameter name="transport.jms.ConnectionFactoryJNDIName">
TopicConnectionFactory
</parameter>
</parameter>
<parameter name="myQueueConnectionFactory">
<parameter name="java.naming.factory.initial">
org.apache.activemq.jndi.ActiveMQInitialContextFactory
</parameter>
<parameter name="java.naming.provider.url">
tcp://localhost:61616
</parameter>
<parameter name="transport.jms.ConnectionFactoryJNDIName">
QueueConnectionFactory
</parameter>
</parameter>
<parameter name="default">
<parameter name="java.naming.factory.initial">
org.apache.activemq.jndi.ActiveMQInitialContextFactory
</parameter>
<parameter name="java.naming.provider.url">
tcp://localhost:61616
</parameter>
<parameter name="transport.jms.ConnectionFactoryJNDIName">
QueueConnectionFactory
</parameter>
</parameter>
</transportReceiver>
...
<transportSender name="jms"
class="org.apache.synapse.transport.jms.JMSSender" />
...