CXF-BC service name shouldn't match the WSDL service
----------------------------------------------------

                 Key: SMXCOMP-654
                 URL: https://issues.apache.org/activemq/browse/SMXCOMP-654
             Project: ServiceMix Components
          Issue Type: Bug
    Affects Versions: servicemix-cxf-bc-2009.01
            Reporter: Jean-Baptiste Onofré
            Priority: Minor
             Fix For: servicemix-cxf-bc-2009.02


If you have a CXF-SE service referenced by service  
{http://www.nanthrax.net}Echo and endpoint EchoImplPort, and you could like to 
"expose" it using a CXF-BC component with the following xbean.xml:

    <cxfbc:consumer service="nanthrax:cxfse-ns" endpoint="cxfbc"
        targetService="nanthrax:Echo"
        targetEndpoint="EchoImplPort"
        locationURI="http://0.0.0.0:8193/nanthrax/echo/"/>

you get a DeploymentException:

javax.jbi.management.DeploymentException: 
org.apache.cxf.service.factory.ServiceConstructionException: Could not find 
definition for service {http://www.nanthrax.net}cxfse-ns.
        at 
org.apache.servicemix.cxfbc.CxfBcConsumer.validate(CxfBcConsumer.java:504)
        at 
org.apache.servicemix.common.AbstractDeployer.validate(AbstractDeployer.java:58)
        at 
org.apache.servicemix.common.xbean.BaseXBeanDeployer.validate(BaseXBeanDeployer.java:55)
        at 
org.apache.servicemix.common.xbean.AbstractXBeanDeployer.deploy(AbstractXBeanDeployer.java:97)
        at 
org.apache.servicemix.common.BaseServiceUnitManager.doDeploy(BaseServiceUnitManager.java:88)
        at 
org.apache.servicemix.common.BaseServiceUnitManager.deploy(BaseServiceUnitManager.java:69)
        at 
org.apache.servicemix.jbi.framework.DeploymentService.deployServiceAssembly(DeploymentService.java:520)
        at 
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAssembly(AutoDeploymentService.java:349)
        at 
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:255)
        at 
org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(AutoDeploymentService.java:658)
        at 
org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDeploymentService.java:63)
        at 
org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploymentService.java:622)
        at java.util.TimerThread.mainLoop(Timer.java:512)
        at java.util.TimerThread.run(Timer.java:462)
Caused by: org.apache.cxf.service.factory.ServiceConstructionException: Could 
not find definition for service {http://www.nanthrax.net}cxfse-ns.
        at 
org.apache.cxf.wsdl11.WSDLServiceFactory.create(WSDLServiceFactory.java:117)
        at 
org.apache.servicemix.cxfbc.CxfBcConsumer.validate(CxfBcConsumer.java:397)
        ... 13 more

The problem is due to CXF ServiceFactory that looking for the BC service name 
into the WSDL.

So, the user has to provide the same service name (Echo in that case) as 
contained in the WSDL.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to