SoapOverJMS: ConnectionFactory may not be null
patst Jan 19, 2017 2:50 AMHey there,
I'm not sure if this is the correct space for the question, but anyways:
I'm trying to get SoapOverJMS working on Wildfly 10.1.0 but I'm strugging with the configuration.
I started with the jboss-helloworld-mdb project and created a 'HelloWorldService.wsdl' (Copied from the docs: SOAP over JMS - WildFly 10 - Project Documentation Editor ).
Then I used wsconsume to create the java classes from the wsdl and created a 'HelloWorldImpl' class (copied from the docs) implementing the 'HelloWorld' service interface.
If i deploy the war file I always get an exception:
08:36:06,399 INFO [org.jboss.ws.cxf.metadata] (MSC service thread 1-4) JBWS024061: Adding service endpoint metadata: id=org.jboss.ws.impl.HelloWorldImpl address=jms:queue:testQueue implementor=org.jboss.ws.impl.HelloWorldImpl serviceName={http://org.jboss.ws/jaxws/cxf/jms}HelloWorldServiceLocal portName={http://org.jboss.ws/jaxws/cxf/jms}HelloWorldImplPort annotationWsdlLocation=META-INF/wsdl/HelloWorldService.wsdl wsdlLocationOverride=null mtomEnabled=false 08:36:06,415 INFO [org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean] (MSC service thread 1-4) Creating Service {http://org.jboss.ws/jaxws/cxf/jms}HelloWorldServiceLocal from WSDL: META-INF/wsdl/HelloWorldService.wsdl 08:36:06,446 INFO [org.apache.cxf.endpoint.ServerImpl] (MSC service thread 1-4) Setting the server's publish address to be jms:queue:testQueue 08:36:06,446 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-4) MSC000001: Failed to start service jboss.deployment.unit."jboss-helloworld-mdb.war".INSTALL: org.jboss.msc.service.StartException in service jboss.deployment.unit."jboss-helloworld-mdb.war".INSTALL: WFLYSRV0153: Failed to process phase INSTALL of deployment "jboss-helloworld-mdb.war" at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:154) at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948) at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Caused by: javax.xml.ws.WebServiceException: java.lang.IllegalArgumentException: connectionFactory may not be null at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:375) at org.jboss.wsf.stack.cxf.deployment.EndpointImpl.doPublish(EndpointImpl.java:79) at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:255) at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:543) at org.jboss.wsf.stack.cxf.configuration.BusHolder.configure(BusHolder.java:234) at org.jboss.wsf.stack.cxf.deployment.aspect.BusDeploymentAspect.startDeploymentBus(BusDeploymentAspect.java:97) at org.jboss.wsf.stack.cxf.deployment.aspect.BusDeploymentAspect.start(BusDeploymentAspect.java:59) at org.jboss.as.webservices.deployers.AspectDeploymentProcessor.deploy(AspectDeploymentProcessor.java:73) at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:147) ... 5 more Caused by: java.lang.IllegalArgumentException: connectionFactory may not be null at org.apache.cxf.transport.jms.JMSConfiguration.ensureProperlyConfigured(JMSConfiguration.java:102) at org.apache.cxf.transport.jms.JMSDestination.activate(JMSDestination.java:104) at org.apache.cxf.transport.AbstractObservable.setMessageObserver(AbstractObservable.java:53) at org.apache.cxf.binding.AbstractBindingFactory.addListener(AbstractBindingFactory.java:95) at org.apache.cxf.binding.soap.SoapBindingFactory.addListener(SoapBindingFactory.java:896) at org.apache.cxf.endpoint.ServerImpl.start(ServerImpl.java:123) at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:366) ... 13 more 08:36:06,446 ERROR [org.jboss.as.controller.management-operation] (DeploymentScanner-threads - 2) WFLYCTL0013: Operation ("full-replace-deployment") failed - address: ([]) - failure description: { "WFLYCTL0080: Failed services" => {"jboss.deployment.unit.\"jboss-helloworld-mdb.war\".INSTALL" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"jboss-helloworld-mdb.war\".INSTALL: WFLYSRV0153: Failed to process phase INSTALL of deployment \"jboss-helloworld-mdb.war\" Caused by: javax.xml.ws.WebServiceException: java.lang.IllegalArgumentException: connectionFactory may not be null Caused by: java.lang.IllegalArgumentException: connectionFactory may not be null"}, "WFLYCTL0412: Required services that are not installed:" => [ "jboss.deployment.unit.\"jboss-helloworld-mdb.war\".INSTALL", "jboss.deployment.unit.\"jboss-helloworld-mdb.war\".beanmanager" ], "WFLYCTL0180: Services with missing/unavailable dependencies" => [ "jboss.deployment.unit.\"jboss-helloworld-mdb.war\".weld.weldClassIntrospector is missing [jboss.deployment.unit.\"jboss-helloworld-mdb.war\".beanmanager]", "jboss.deployment.unit.\"jboss-helloworld-mdb.war\".batch.environment is missing [jboss.deployment.unit.\"jboss-helloworld-mdb.war\".beanmanager]" ] }
Which part am I missing here? The docs say I have to add the module 'org.hornetq' to my dependencies, but I'm doubting this is correct. The module does not exist anymore.
I tried 'org.apache.activemq.artemis', 'org.apache.cxf' and 'org.apache.cxf.impl' but I does not change anything.
What can I do to get SoapOverJms running?