You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Lukasz Dywicki <lu...@dywicki.pl> on 2008/04/24 10:52:51 UTC

Embeded ServiceMix crash when testing cxf based service engine

Hello,
I've problem with cxf-su component. I can't create correct dependencies to
run embeded smx.

ServiceMix 3.2.1 (own build from tag in repository)
CXF 2.0.6-SNAPSHOT
JDK 1.5/1.6

Project structure:
servicemix (repositories, plugin configurations etc)
  `- parent (libraries versions)
      `- client (cxf-based client)
      `- contract (definition of types, all used xsd + wsdl)
      `- devbank-cxfbc (servicemix-cxf-bc)
      `- devbank-cxfse (servicemix-cxf-se - here I try to run tests)
      `- devbank-cxfsa (assembly)

      
My pom.xml contains two ServiceMix dependencies:
    <dependencies>
        <dependency>
            <groupId>org.apache.servicemix</groupId>
            <artifactId>servicemix-cxf-se</artifactId>
        </dependency>
        <dependency>
            <!-- definition of used types -->
            <groupId>pl.bpsa.smx3</groupId>
            <artifactId>contract</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils</artifactId>
        </dependency>
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.easymock</groupId>
            <artifactId>easymock</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.servicemix</groupId>
            <artifactId>servicemix-core</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

Test context contains:
<beans xmlns=" http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans "
    xmlns:cxfse=" http://servicemix.apache.org/cxfse/1.0
http://servicemix.apache.org/cxfse/1.0 "
    xmlns:sm=" http://servicemix.apache.org/config/1.0
http://servicemix.apache.org/config/1.0 "

    xmlns:devbank=" http://smx3.bpsa.pl/services/devbank
http://smx3.bpsa.pl/services/devbank ">

    <sm:container id="container" embedded="true">
        <sm:endpoints>
            <cxfse:endpoint service="devbank:Devbank"
endpoint="devbank-engine"
interfaceName="pl.bpsa.smx3.services.devbank.DevbankServiceType">
                <!-- @interfaceName from pl.bpsa.smx3:contract package -->
                <cxfse:pojo>
                    <bean id="devbankServiceType"
class="pl.bpsa.smx3.impl.services.devbank.DevbankServiceTypeImpl" />
                </cxfse:pojo>
            </cxfse:endpoint>
        </sm:endpoints>
    </sm:container>

I would like to test my endpoint implementation but i can't because embeded
servicemix crash when start:
-------------------------------------------------------------------------------
Test set: pl.bpsa.smx3.impl.services.devbank.DevbankServiceTypeImplTest
-------------------------------------------------------------------------------
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 5.266 sec
<<< FAILURE!
testConsumer(pl.bpsa.smx3.impl.services.devbank.DevbankServiceTypeImplTest)
 Time elapsed: 5.235 sec  <<< ERROR!
org.springframework.beans.factory.BeanCreationException: Error creating
bean with name 'container' defined in class path resource [context.xml]:
Invocation of init method failed; nested exception is
java.lang.NoSuchMethodError: org.apache.cxf.jaxb.JAXBDataBinding.<init>(Z)V
	at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1336)
	at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:471)
	at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
	at java.security.AccessController.doPrivileged(Native Method)
	at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
	at
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
	at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:217)
	at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
	at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
	at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
	at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
	at
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:729)
	at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:381)
	at
org.springframework.test.AbstractSingleSpringContextTests.createApplicationContext(AbstractSingleSpringContextTests.java:243)
	at
org.springframework.test.AbstractSingleSpringContextTests.loadContextLocations(AbstractSingleSpringContextTests.java:212)
	at
org.springframework.test.AbstractSingleSpringContextTests.loadContext(AbstractSingleSpringContextTests.java:187)
	at
org.springframework.test.AbstractSpringContextTests.getContext(AbstractSpringContextTests.java:140)
	at
org.springframework.test.AbstractSingleSpringContextTests.setUp(AbstractSingleSpringContextTests.java:100)
	at junit.framework.TestCase.runBare(TestCase.java:132)
	at
org.springframework.test.ConditionalTestCase.runBare(ConditionalTestCase.java:76)
	at junit.framework.TestResult$1.protect(TestResult.java:110)
	at junit.framework.TestResult.runProtected(TestResult.java:128)
	at junit.framework.TestResult.run(TestResult.java:113)
	at junit.framework.TestCase.run(TestCase.java:124)
	at junit.framework.TestSuite.runTest(TestSuite.java:232)
	at junit.framework.TestSuite.run(TestSuite.java:227)
	at
org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:81)
	at
org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
	at
org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140)
	at
org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
	at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
	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.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:338)
	at
org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:997)
Caused by: java.lang.NoSuchMethodError:
org.apache.cxf.jaxb.JAXBDataBinding.<init>(Z)V
	at
org.apache.cxf.service.factory.ReflectionServiceFactoryBean.createDefaultDataBinding(ReflectionServiceFactoryBean.java:155)
	at
org.apache.cxf.service.factory.AbstractServiceFactoryBean.getDataBinding(AbstractServiceFactoryBean.java:56)
	at
org.apache.cxf.frontend.ServerFactoryBean.applyExtraClass(ServerFactoryBean.java:198)
	at
org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:104)
	at
org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:160)
	at org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:313)
	at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:235)
	at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:185)
	at org.apache.servicemix.cxfse.CxfSeEndpoint.start(CxfSeEndpoint.java:201)
	at
org.apache.servicemix.common.endpoints.SimpleEndpoint.activate(SimpleEndpoint.java:55)
	at org.apache.servicemix.common.ServiceUnit.start(ServiceUnit.java:53)
	at
org.apache.servicemix.common.DefaultComponent.doStart(DefaultComponent.java:348)
	at
org.apache.servicemix.common.AsyncBaseLifeCycle.start(AsyncBaseLifeCycle.java:282)
	at
org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doStart(ComponentMBeanImpl.java:293)
	at
org.apache.servicemix.jbi.framework.ComponentRegistry.setInitialRunningStateFromStart(ComponentRegistry.java:158)
	at
org.apache.servicemix.jbi.framework.ComponentRegistry.start(ComponentRegistry.java:75)
	at org.apache.servicemix.jbi.framework.Registry.start(Registry.java:128)
	at
org.apache.servicemix.jbi.container.JBIContainer.start(JBIContainer.java:636)
	at
org.apache.servicemix.jbi.container.SpringJBIContainer.afterPropertiesSet(SpringJBIContainer.java:115)
	at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1367)
	at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1333)
	... 36 more
-- 
View this message in context: http://www.nabble.com/Embeded-ServiceMix-crash-when-testing-cxf-based-service-engine-tp16847804p16847804.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: Embeded ServiceMix crash when testing cxf based service engine

Posted by Freeman Fang <fr...@gmail.com>.
Hi,
Seems like cxf version conflict.
We build servicemic  3.2.1 against cxf 2.0.3, so if you want to use cxf 
2.0.6 snapshot, just try last servicemix 3.2.2 snapshot.

Freeman

Lukasz Dywicki wrote:
> Hello,
> I've problem with cxf-su component. I can't create correct dependencies to
> run embeded smx.
>
> ServiceMix 3.2.1 (own build from tag in repository)
> CXF 2.0.6-SNAPSHOT
> JDK 1.5/1.6
>
> Project structure:
> servicemix (repositories, plugin configurations etc)
>   `- parent (libraries versions)
>       `- client (cxf-based client)
>       `- contract (definition of types, all used xsd + wsdl)
>       `- devbank-cxfbc (servicemix-cxf-bc)
>       `- devbank-cxfse (servicemix-cxf-se - here I try to run tests)
>       `- devbank-cxfsa (assembly)
>
>       
> My pom.xml contains two ServiceMix dependencies:
>     <dependencies>
>         <dependency>
>             <groupId>org.apache.servicemix</groupId>
>             <artifactId>servicemix-cxf-se</artifactId>
>         </dependency>
>         <dependency>
>             <!-- definition of used types -->
>             <groupId>pl.bpsa.smx3</groupId>
>             <artifactId>contract</artifactId>
>         </dependency>
>         <dependency>
>             <groupId>org.springframework</groupId>
>             <artifactId>spring-jdbc</artifactId>
>         </dependency>
>         <dependency>
>             <groupId>commons-beanutils</groupId>
>             <artifactId>commons-beanutils</artifactId>
>         </dependency>
>         <dependency>
>             <groupId>commons-logging</groupId>
>             <artifactId>commons-logging</artifactId>
>         </dependency>
>         <dependency>
>             <groupId>junit</groupId>
>             <artifactId>junit</artifactId>
>             <scope>test</scope>
>         </dependency>
>         <dependency>
>             <groupId>org.easymock</groupId>
>             <artifactId>easymock</artifactId>
>             <scope>test</scope>
>         </dependency>
>         <dependency>
>             <groupId>org.springframework</groupId>
>             <artifactId>spring-test</artifactId>
>             <scope>test</scope>
>         </dependency>
>         <dependency>
>             <groupId>org.apache.servicemix</groupId>
>             <artifactId>servicemix-core</artifactId>
>             <scope>test</scope>
>         </dependency>
>     </dependencies>
>
> Test context contains:
> <beans xmlns=" http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans "
>     xmlns:cxfse=" http://servicemix.apache.org/cxfse/1.0
> http://servicemix.apache.org/cxfse/1.0 "
>     xmlns:sm=" http://servicemix.apache.org/config/1.0
> http://servicemix.apache.org/config/1.0 "
>
>     xmlns:devbank=" http://smx3.bpsa.pl/services/devbank
> http://smx3.bpsa.pl/services/devbank ">
>
>     <sm:container id="container" embedded="true">
>         <sm:endpoints>
>             <cxfse:endpoint service="devbank:Devbank"
> endpoint="devbank-engine"
> interfaceName="pl.bpsa.smx3.services.devbank.DevbankServiceType">
>                 <!-- @interfaceName from pl.bpsa.smx3:contract package -->
>                 <cxfse:pojo>
>                     <bean id="devbankServiceType"
> class="pl.bpsa.smx3.impl.services.devbank.DevbankServiceTypeImpl" />
>                 </cxfse:pojo>
>             </cxfse:endpoint>
>         </sm:endpoints>
>     </sm:container>
>
> I would like to test my endpoint implementation but i can't because embeded
> servicemix crash when start:
> -------------------------------------------------------------------------------
> Test set: pl.bpsa.smx3.impl.services.devbank.DevbankServiceTypeImplTest
> -------------------------------------------------------------------------------
> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 5.266 sec
> <<< FAILURE!
> testConsumer(pl.bpsa.smx3.impl.services.devbank.DevbankServiceTypeImplTest)
>  Time elapsed: 5.235 sec  <<< ERROR!
> org.springframework.beans.factory.BeanCreationException: Error creating
> bean with name 'container' defined in class path resource [context.xml]:
> Invocation of init method failed; nested exception is
> java.lang.NoSuchMethodError: org.apache.cxf.jaxb.JAXBDataBinding.<init>(Z)V
> 	at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1336)
> 	at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:471)
> 	at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
> 	at
> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
> 	at
> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:217)
> 	at
> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
> 	at
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
> 	at
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
> 	at
> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
> 	at
> org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:729)
> 	at
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:381)
> 	at
> org.springframework.test.AbstractSingleSpringContextTests.createApplicationContext(AbstractSingleSpringContextTests.java:243)
> 	at
> org.springframework.test.AbstractSingleSpringContextTests.loadContextLocations(AbstractSingleSpringContextTests.java:212)
> 	at
> org.springframework.test.AbstractSingleSpringContextTests.loadContext(AbstractSingleSpringContextTests.java:187)
> 	at
> org.springframework.test.AbstractSpringContextTests.getContext(AbstractSpringContextTests.java:140)
> 	at
> org.springframework.test.AbstractSingleSpringContextTests.setUp(AbstractSingleSpringContextTests.java:100)
> 	at junit.framework.TestCase.runBare(TestCase.java:132)
> 	at
> org.springframework.test.ConditionalTestCase.runBare(ConditionalTestCase.java:76)
> 	at junit.framework.TestResult$1.protect(TestResult.java:110)
> 	at junit.framework.TestResult.runProtected(TestResult.java:128)
> 	at junit.framework.TestResult.run(TestResult.java:113)
> 	at junit.framework.TestCase.run(TestCase.java:124)
> 	at junit.framework.TestSuite.runTest(TestSuite.java:232)
> 	at junit.framework.TestSuite.run(TestSuite.java:227)
> 	at
> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:81)
> 	at
> org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
> 	at
> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140)
> 	at
> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
> 	at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
> 	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.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:338)
> 	at
> org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:997)
> Caused by: java.lang.NoSuchMethodError:
> org.apache.cxf.jaxb.JAXBDataBinding.<init>(Z)V
> 	at
> org.apache.cxf.service.factory.ReflectionServiceFactoryBean.createDefaultDataBinding(ReflectionServiceFactoryBean.java:155)
> 	at
> org.apache.cxf.service.factory.AbstractServiceFactoryBean.getDataBinding(AbstractServiceFactoryBean.java:56)
> 	at
> org.apache.cxf.frontend.ServerFactoryBean.applyExtraClass(ServerFactoryBean.java:198)
> 	at
> org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:104)
> 	at
> org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:160)
> 	at org.apache.cxf.jaxws.EndpointImpl.getServer(EndpointImpl.java:313)
> 	at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:235)
> 	at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:185)
> 	at org.apache.servicemix.cxfse.CxfSeEndpoint.start(CxfSeEndpoint.java:201)
> 	at
> org.apache.servicemix.common.endpoints.SimpleEndpoint.activate(SimpleEndpoint.java:55)
> 	at org.apache.servicemix.common.ServiceUnit.start(ServiceUnit.java:53)
> 	at
> org.apache.servicemix.common.DefaultComponent.doStart(DefaultComponent.java:348)
> 	at
> org.apache.servicemix.common.AsyncBaseLifeCycle.start(AsyncBaseLifeCycle.java:282)
> 	at
> org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doStart(ComponentMBeanImpl.java:293)
> 	at
> org.apache.servicemix.jbi.framework.ComponentRegistry.setInitialRunningStateFromStart(ComponentRegistry.java:158)
> 	at
> org.apache.servicemix.jbi.framework.ComponentRegistry.start(ComponentRegistry.java:75)
> 	at org.apache.servicemix.jbi.framework.Registry.start(Registry.java:128)
> 	at
> org.apache.servicemix.jbi.container.JBIContainer.start(JBIContainer.java:636)
> 	at
> org.apache.servicemix.jbi.container.SpringJBIContainer.afterPropertiesSet(SpringJBIContainer.java:115)
> 	at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1367)
> 	at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1333)
> 	... 36 more
>