and can you try the same but leave out the transportId="...". All my
examples do not do this.
Christian
Am 03.02.2012 11:53, schrieb Jens:
Hi,
according to the 2.4 release notes, importing the CXF extensions in the
Spring configuration is no longer necessary. I'm running into a problem with
that with 2.5.2, however.
The original WSDL specifies an HTTP transport but communication really is
via JMS. So my client config looks like this:
<jaxws:client name="{http://bla.de/Service/impl/FAG}ServicePort"
createdFromAPI="true"
serviceClass="de.bla.ServicePortType"
transportId="http://cxf.apache.org/transports/jms"
address="jms://">
<jaxws:features>
<bean class="org.apache.cxf.transport.jms.JMSConfigFeature">
<property name="jmsConfig" ref="jmsConfig"/>
</bean>
</jaxws:features>
...
Now, unless I import META-INF/cxf/cxf-extension-jms.xml I get the following
error at runtime:
2012-02-03 11:34:15,458 ERROR | Caught exception: No conduit initiator was
found for the namespace http://cxf.apache.org/transports/jms. |
client.VRIFClient
org.apache.cxf.interceptor.Fault: No conduit initiator was found for the
namespace http://cxf.apache.org/transports/jms.
at
org.apache.cxf.endpoint.AbstractConduitSelector.getSelectedConduit(AbstractConduitSelector.java:101)
at
org.apache.cxf.endpoint.UpfrontConduitSelector.selectConduit(UpfrontConduitSelector.java:71)
at
org.apache.cxf.endpoint.ClientImpl.getConduit(ClientImpl.java:798)
at
org.apache.cxf.transport.jms.JMSConfigFeature.initialize(JMSConfigFeature.java:52)
at
org.apache.cxf.frontend.ClientFactoryBean.applyFeatures(ClientFactoryBean.java:112)
at
org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:99)
at
org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:117)
at
org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:124)
at org.apache.cxf.jaxws.ServiceImpl.createPort(ServiceImpl.java:471)
at org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:336)
at org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:323)
at javax.xml.ws.Service.getPort(Service.java:92)
at
de.bla.service.impl.fag.MyService.getServicePort(MyService.java:59)
at de.bla.vrif.client.VRIFClient.run(VRIFClient.java:77)
at de.bla.vrif.client.VRIFClient.main(VRIFClient.java:33)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:283)
at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.cxf.BusException: No conduit initiator was found for
the namespace http://cxf.apache.org/transports/jms.
at
org.apache.cxf.transport.ConduitInitiatorManagerImpl.getConduitInitiator(ConduitInitiatorManagerImpl.java:135)
at
org.apache.cxf.endpoint.AbstractConduitSelector.getSelectedConduit(AbstractConduitSelector.java:72)
... 20 more
If I do import the extension I get past this point but then error out later
with a heap exception upon retrieving the JMS factory (which seems to go
wrong and retries recursively or something).
Any ideas what might be wrong here?
Thanks,
Jens
--
View this message in context:
http://cxf.547215.n5.nabble.com/JMS-transport-No-conduit-initiator-was-found-tp5453473p5453473.html
Sent from the cxf-user mailing list archive at Nabble.com.
--
Christian Schneider
http://www.liquid-reality.de
Open Source Architect
Talend Application Integration Division http://www.talend.com