I wasn't sure, so I posted to both, but they appended to a bug I opened for
basically a similar issue, so I guess it really was another bug. So if I
get a snapshot of cxf 2.0.2.. can I just plug that into servicemix 3.2 so I
can get past this problem?
On 9/18/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote:
>
> This question is really related to CXF so I'd rather ask on the CXF
> mailing
> lists, where more people will be able to help you. Post back any solution
> for future reference please...
>
> On 9/18/07, Ryan Moquin <[EMAIL PROTECTED]> wrote:
> >
> > I decided to convert one of my servicemix services over to cxf which was
> > working great on xfire. I added the cxf wsdl2java plugin for maven like
> > this:
> >
> > <plugin>
> > <groupId>org.apache.cxf</groupId>
> > <artifactId>cxf-codegen-plugin</artifactId>
> > <version>${cxf-version}</version>
> > <dependencies>
> > <dependency>
> > <groupId>org.apache.cxf </groupId>
> > <artifactId>cxf-rt-bindings-soap</artifactId>
> > <version>${cxf-version}</version>
> > </dependency>
> > </dependencies>
> > <executions>
> > <execution>
> > <phase>generate-sources</phase>
> > <configuration>
> > <sourceRoot>${project.build.directory
> > }/generated-sources/jaxws</sourceRoot>
> >
> > <wsdlOptions>
> > <wsdlOption>
> >
> > <wsdl>${basedir}/src/main/resources/CommunicationService.wsdl</wsdl>
> > <extraargs>
> > <extraarg>-verbose</extraarg>
> > </extraargs>
> > </wsdlOption>
> > </wsdlOptions>
> > </configuration>
> > <goals>
> > <goal>wsdl2java</goal>
> > </goals>
> > </execution>
> > </executions>
> > </plugin>
> >
> > and got this exception:
> >
> > WSDLToJava Error : java.lang.NullPointerException
> >
> > org.apache.cxf.tools.common.ToolException :
> java.lang.NullPointerException
> > at org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.execute(
> > WSDLToJavaContainer.java:242)
> > at org.apache.cxf.tools.common.toolspec.ToolRunner.runTool(
> > ToolRunner.java:83)
> > at org.apache.cxf.tools.wsdlto.WSDLToJava.run(WSDLToJava.java
> :102)
> > at org.apache.cxf.tools.wsdlto.WSDLToJava.main(WSDLToJava.java
> > :171)
> > at org.apache.cxf.maven_plugin.WSDL2JavaMojo.processWsdl (
> > WSDL2JavaMojo.java:186)
> > at org.apache.cxf.maven_plugin.WSDL2JavaMojo.execute(
> > WSDL2JavaMojo.java:102)
> > at org.apache.maven.plugin.DefaultPluginManager.executeMojo(
> > DefaultPluginManager.java:443)
> > at org.apache.maven.lifecycle.DefaultLifecycleExecutor
> > .executeGoals(
> > DefaultLifecycleExecutor.java:539)
> > at
> > org.apache.maven.lifecycle.DefaultLifecycleExecutor
> > .executeGoalWithLifecycle
> > (DefaultLifecycleExecutor.java:480
> > )
> > at org.apache.maven.lifecycle.DefaultLifecycleExecutor
> > .executeGoal(
> > DefaultLifecycleExecutor.java:459)
> > at
> > org.apache.maven.lifecycle.DefaultLifecycleExecutor
> > .executeGoalAndHandleFailures
> > (DefaultLifecycleExecutor.java
> > :311)
> > at
> > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(
> > DefaultLifecycleExecutor.java:278)
> > at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(
> > DefaultLifecycleExecutor.java :143)
> > at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java
> :334)
> > at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:125)
> > at org.apache.maven.cli.MavenCli.main(MavenCli.java:272)
> > 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:585)
> > at org.codehaus.classworlds.Launcher.launchEnhanced(
> Launcher.java
> > :315)
> > at org.codehaus.classworlds.Launcher.launch (Launcher.java:255)
> > at org.codehaus.classworlds.Launcher.mainWithExitCode(
> > Launcher.java
> > :430)
> > at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> > Caused by: java.lang.NullPointerException
> > at org.apache.cxf.tools.util.SOAPBindingUtil.getSoapHeaders(
> > SOAPBindingUtil.java:199)
> > at org.apache.cxf.binding.soap.SoapBindingFactory.initialize
> > Message(
> > SoapBindingFactory.java:507)
> > at
> >
> org.apache.cxf.binding.soap.SoapBindingFactory.initializeBindingOperation
> > (
> > SoapBindingFactory.java:493)
> > at org.apache.cxf.binding.soap.SoapBindingFactory.createBind
> > ingInfo(
> > SoapBindingFactory.java:468)
> > at org.apache.cxf.wsdl11.WSDLServiceBuilder.buildBinding(
> > WSDLServiceBuilder.java :490)
> > at org.apache.cxf.wsdl11.WSDLServiceBuilder.buildServices(
> > WSDLServiceBuilder.java:264)
> > at org.apache.cxf.wsdl11.WSDLServiceBuilder.buildServices(
> > WSDLServiceBuilder.java:154)
> > at org.apache.cxf.wsdl11.WSDLServiceBuilder.buildServices (
> > WSDLServiceBuilder.java:143)
> > at org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.execute(
> > WSDLToJavaContainer.java:161)
> > at org.apache.cxf.tools.wsdlto.WSDLToJavaContainer.execute(
> > WSDLToJavaContainer.java :234)
> > ... 23 more
> >
> > I took out the dependency cxf-rt-bindings-soap since I'm not using an
> > headers in my wsdl. When I did, this error went away.
> >
> > My service will then build, when I deploy it though, I get the same
> error
> > again and the service archive won't deploy. I don't understand why it
> > keeps
> > expecting me to use soap headers when I'm not using them:
> >
> > INFO - DeploymentService - UnDeployed ServiceUnit
> > CommunicationService-jsr181-su from Component: servicemix
> > -cxf-se
> > ERROR - AutoDeploymentService - Failed to update Service
> > Assembly:
> > CommunicationServiceSA-1.0-SNAPSHOT.0.tmp
> > java.lang.Exception: <?xml version="1.0" encoding="UTF-8"?>
> > <jbi-task xmlns="http://java.sun.com/xml/ns/jbi/management-message"
> > version="1.0">
> > <jbi-task-result>
> > <frmwk-task-result>
> > <frmwk-task-result-details>
> > <task-result-details>
> > <task-id>deploy</task-id>
> > <task-result>FAILED</task-result>
> > <message-type>ERROR</message-type>
> > </task-result-details>
> > </frmwk-task-result-details>
> > </frmwk-task-result>
> > <component-task-result xmlns="
> > http://java.sun.com/xml/ns/jbi/management-message">
> > <component-name>servicemix-cxf-se</component-name>
> > <component-task-result-details>
> > <task-result-details>
> > <task-id>deploy</task-id>
> > <task-result>SUCCESS</task-result>
> > </task-result-details>
> > </component-task-result-details>
> > </component-task-result>
> > <component-task-result>
> > <component-name>servicemix-cxf-bc</component-name>
> > <component-task-result-details>
> > <task-result-details>
> > <task-id>deploy</task-id>
> > <task-result>FAILED</task-result>
> > <message-type>ERROR</message-type>
> > <task-status-msg>
> > <msg-loc-info>
> > <loc-token/>
> > <loc-message>Unable to parse result string</loc-message>
> > </msg-loc-info>
> > </task-status-msg>
> > <exception-info>
> > <nesting-level>1</nesting-level>
> > <loc-token/>
> > <loc-message>java.lang.NullPointerException</loc-message>
> > <stack-trace><![CDATA[javax.jbi.management.DeploymentException:
> > java.lang.NullPointerException
> > at org.apache.servicemix.cxfbc.CxfBcConsumer.validate(
> > CxfBcConsumer.java:288)
> > 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:95)
> > 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:508)
> > at
> >
> org.apache.servicemix.jbi.framework.AutoDeploymentService.checkPendingSAs(
> > AutoDeploymentService.java:479)
> > at
> > org.apache.servicemix.jbi.framework.AutoDeploymentServi
> > ce.checkPendingComponents
> > (AutoDeploymentService.java:53
> > 2)
> > at
> > org.apache.servicemix.jbi.framework.AutoDeploymentServi
> > ce.updateSharedLibrary
> > (AutoDeploymentService.java:314)
> > at
> > org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(
> > AutoDeploymentService.java:251)
> > at
> >
> org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory
> > (
> > AutoDeploymentService.java:647)
> > at
> > org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(
> > AutoDeploymentService.java:60)
> > at org.apache.servicemix.jbi.framework.AutoDeploymentServi
> > ce$1.run(
> > AutoDeploymentService.java:611)
> > at java.util.TimerThread.mainLoop(Timer.java:512)
> > at java.util.TimerThread.run(Timer.java:462)
> > Caused by: java.lang.NullPointerException
> > at org.apache.cxf.tools.util.SOAPBindingUtil.getSoapHeaders(
> > SOAPBindingUtil.java:199)
> > at org.apache.cxf.binding.soap.SoapBindingFactory.initialize
> > Message(
> > SoapBindingFactory.java:507)
> > at
> >
> org.apache.cxf.binding.soap.SoapBindingFactory.initializeBindingOperation(
> > SoapBindingFactory.java:493)
> > at org.apache.cxf.binding.soap.SoapBindingFactory.createBind
> > ingInfo(
> > SoapBindingFactory.java:468)
> > at org.apache.cxf.wsdl11.WSDLServiceBuilder.buildBinding(
> > WSDLServiceBuilder.java:490)
> > at org.apache.cxf.wsdl11.WSDLServiceBuilder.buildServices(
> > WSDLServiceBuilder.java:264)
> > at org.apache.cxf.wsdl11.WSDLServiceBuilder.buildServices(
> > WSDLServiceBuilder.java:158)
> > at org.apache.cxf.wsdl11.WSDLServiceFactory.create(
> > WSDLServiceFactory.java:117)
> > at org.apache.servicemix.cxfbc.CxfBcConsumer.validate(
> > CxfBcConsumer.java:215)
> > ... 15 more
> > ]]></stack-trace>
> > </exception-info>
> > </task-result-details>
> > </component-task-result-details>
> > </component-task-result>
> > </jbi-task-result>
> > </jbi-task>
> >
> > at org.apache.servicemix.jbi.framework.ManagementSupport.failure
> (
> > ManagementSupport.java:125)
> > at org.apache.servicemix.jbi.framework.ManagementSupport.failure
> (
> > ManagementSupport.java:111)
> > at
> > org.apache.servicemix.jbi.framework.DeploymentService
> > .deployServiceAssembly(
> > DeploymentService.java:543)
> > at
> >
> org.apache.servicemix.jbi.framework.AutoDeploymentService.checkPendingSAs(
> > AutoDeploymentService.java:479)
> > at
> > org.apache.servicemix.jbi.framework.AutoDeploymentServi
> > ce.checkPendingComponents
> > (AutoDeploymentService.java:53
> > 2)
> > at
> > org.apache.servicemix.jbi.framework.AutoDeploymentServi
> > ce.updateSharedLibrary
> > (AutoDeploymentService.java:314)
> > at
> > org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(
> > AutoDeploymentService.java:251)
> > at
> >
> org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory
> > (
> > AutoDeploymentService.java:647)
> > at
> > org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(
> > AutoDeploymentService.java:60)
> > at org.apache.servicemix.jbi.framework.AutoDeploymentServi
> > ce$1.run(
> > AutoDeploymentService.java:611)
> > at java.util.TimerThread.mainLoop(Timer.java:512)
> > at java.util.TimerThread.run(Timer.java:462)
> >
>
>
>
> --
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
>