Hi,
I'd like to expose my EndPoint as a JMS web service
I've added cxf-rt-transport-jms JAR as dependency and updated my Spring
configuration to user "jms://" URL as describe in CXF doc
http://cwiki.apache.org/CXF20DOC/using-the-jmsconfigfeature.html
<bean id="acteEndPoint" class="com....ActeEndPoint"/>
<jaxws:endpoint id="acteEndPoint.jms"
address="jms://"
implementor="#acteEndPoint" >
<jaxws:properties>
<entry key="schema-validation-enabled"
value="${ws.schema-validation-enabled}" />
</jaxws:properties>
<jaxws:features>
<bean class="org.apache.cxf.transport.jms.JMSConfigFeature">
<property name="jmsConfig">
<bean class="org.apache.cxf.transport.jms.JMSConfiguration"
p:connectionFactory-ref="mqConnectionFactory"
p:useJms11="true"
p:targetDestination="queue://VPC_QMGR.D1/VGR/130/01/130_695/DET_OPECO_VPC/00/EV?targetClient=1"
/>
</property>
</bean>
</jaxws:features>
</jaxws:endpoint>
(Note : the JMS implementation I'm using is IBM Websphere MQ 6)
Running the applicationContext fails :
Caused by: javax.xml.ws.WebServiceException:
org.apache.cxf.service.factory.ServiceConstructionException
at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:275)
... 37 more
Caused by: org.apache.cxf.service.factory.ServiceConstructionException
at
org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:139)
at
org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:167)
... 46 more
Caused by: java.net.MalformedURLException: unknown protocol: jms
at java.net.URL.<init>(URL.java:574)
at java.net.URL.<init>(URL.java:464)
at java.net.URL.<init>(URL.java:413)
at
org.apache.cxf.transport.http_jetty.JettyHTTPDestination.<init>(JettyHTTPDestination.java:92)
at
org.apache.cxf.transport.http_jetty.JettyHTTPTransportFactory.createDestination(JettyHTTPTransportFactory.java:116)
at
org.apache.cxf.transport.http_jetty.JettyHTTPTransportFactory.getDestination(JettyHTTPTransportFactory.java:103)
at org.apache.cxf.endpoint.ServerImpl.initDestination(ServerImpl.java:90)
at org.apache.cxf.endpoint.ServerImpl.<init>(ServerImpl.java:69)
at
org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:118)
... 49 more
What did I missed ?
Nicolas