Uploaded image for project: 'ServiceMix'
  1. ServiceMix
  2. SM-2056

Upgrade to JAXB 2.2 and include JAXB API in the container lib

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 3.3.2
    • Fix Version/s: 3.4.0
    • Component/s: None
    • Labels:
      None

      Description

      When starting ServiceMix 3.3.3-SNAPSHOT, the CXF BC component doesn't start:

      20750 [Timer-3] INFO org.apache.cxf.bus.spring.ControlledValidationXmlBeanDefinitionReader - Loading XML bean definitions from class path resource [META-INF/cxf/cxf-extension-http.xml]
      20761 [Timer-3] INFO org.springframework.beans.factory.support.DefaultListableBeanFactory - Overriding bean definition for bean 'org.apache.cxf.transport.http.policy.HTTPClientAssertionBuilder': replacing [Generic bean: class [org.apache.cxf.transport.http.policy.HTTPClientAssertionBuilder]; scope=; abstract=false; lazyInit=true; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in class path resource [META-INF/cxf/cxf-extension-http.xml]] with [Generic bean: class [org.apache.cxf.transport.http.policy.HTTPClientAssertionBuilder]; scope=; abstract=false; lazyInit=true; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in class path resource [META-INF/cxf/cxf-extension-http.xml]]
      20761 [Timer-3] INFO org.springframework.beans.factory.support.DefaultListableBeanFactory - Overriding bean definition for bean 'org.apache.cxf.transport.http.policy.HTTPServerAssertionBuilder': replacing [Generic bean: class [org.apache.cxf.transport.http.policy.HTTPServerAssertionBuilder]; scope=; abstract=false; lazyInit=true; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in class path resource [META-INF/cxf/cxf-extension-http.xml]] with [Generic bean: class [org.apache.cxf.transport.http.policy.HTTPServerAssertionBuilder]; scope=; abstract=false; lazyInit=true; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in class path resource [META-INF/cxf/cxf-extension-http.xml]]
      20762 [Timer-3] INFO org.springframework.beans.factory.support.DefaultListableBeanFactory - Overriding bean definition for bean 'org.apache.cxf.transport.http.policy.NoOpPolicyInterceptorProvider': replacing [Generic bean: class [org.apache.cxf.transport.http.policy.NoOpPolicyInterceptorProvider]; scope=; abstract=false; lazyInit=true; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in class path resource [META-INF/cxf/cxf-extension-http.xml]] with [Generic bean: class [org.apache.cxf.transport.http.policy.NoOpPolicyInterceptorProvider]; scope=; abstract=false; lazyInit=true; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in class path resource [META-INF/cxf/cxf-extension-http.xml]]
      20763 [Timer-3] INFO org.springframework.beans.factory.support.DefaultListableBeanFactory - Overriding bean definition for bean 'org.apache.cxf.transport.http.ClientOnlyHTTPTransportFactory': replacing [Generic bean: class [org.apache.cxf.transport.http.ClientOnlyHTTPTransportFactory]; scope=; abstract=false; lazyInit=true; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in class path resource [META-INF/cxf/cxf-extension-http.xml]] with [Generic bean: class [org.apache.cxf.transport.http.ClientOnlyHTTPTransportFactory]; scope=; abstract=false; lazyInit=true; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in class path resource [META-INF/cxf/cxf-extension-http.xml]]
      20763 [Timer-3] INFO org.apache.cxf.bus.spring.ControlledValidationXmlBeanDefinitionReader - Loading XML bean definitions from class path resource [META-INF/cxf/cxf-extension-jms.xml]
      ERROR - ComponentMBeanImpl - Could not start component
      java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
      at org.apache.cxf.bus.spring.BusWiringBeanFactoryPostProcessor.postProcessBeanFactory(BusWiringBeanFactoryPostProcessor.java:74)
      at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:663)
      at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:653)
      at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:407)
      at org.apache.cxf.bus.spring.BusApplicationContext.<init>(BusApplicationContext.java:91)
      at org.apache.cxf.bus.spring.SpringBusFactory.createApplicationContext(SpringBusFactory.java:102)
      at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:93)
      at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:86)
      at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:64)
      at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:53)
      at org.apache.servicemix.cxfbc.CxfBcComponent.doInit(CxfBcComponent.java:82)
      at org.apache.servicemix.common.AsyncBaseLifeCycle.init(AsyncBaseLifeCycle.java:205)
      at org.apache.servicemix.common.SyncLifeCycleWrapper.init(SyncLifeCycleWrapper.java:44)
      at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.init(ComponentMBeanImpl.java:201)
      at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doStart(ComponentMBeanImpl.java:287)
      at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.start(ComponentMBeanImpl.java:216)
      at org.apache.servicemix.jbi.framework.InstallationService.install(InstallationService.java:331)
      at org.apache.servicemix.jbi.framework.AutoDeploymentService.checkPendingComponents(AutoDeploymentService.java:509)
      at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateSharedLibrary(AutoDeploymentService.java:313)
      at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:253)
      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)
      Exception in thread "Timer-3" java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
      at org.apache.cxf.bus.spring.BusWiringBeanFactoryPostProcessor.postProcessBeanFactory(BusWiringBeanFactoryPostProcessor.java:74)
      at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:663)
      at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:653)
      at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:407)
      at org.apache.cxf.bus.spring.BusApplicationContext.<init>(BusApplicationContext.java:91)
      at org.apache.cxf.bus.spring.SpringBusFactory.createApplicationContext(SpringBusFactory.java:102)
      at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:93)
      at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:86)
      at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:64)
      at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:53)
      at org.apache.servicemix.cxfbc.CxfBcComponent.doInit(CxfBcComponent.java:82)
      at org.apache.servicemix.common.AsyncBaseLifeCycle.init(AsyncBaseLifeCycle.java:205)
      at org.apache.servicemix.common.SyncLifeCycleWrapper.init(SyncLifeCycleWrapper.java:44)
      at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.init(ComponentMBeanImpl.java:201)
      at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doStart(ComponentMBeanImpl.java:287)
      at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.start(ComponentMBeanImpl.java:216)
      at org.apache.servicemix.jbi.framework.InstallationService.install(InstallationService.java:331)
      at org.apache.servicemix.jbi.framework.AutoDeploymentService.checkPendingComponents(AutoDeploymentService.java:509)
      at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateSharedLibrary(AutoDeploymentService.java:313)
      at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:253)
      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)

        Activity

        Hide
        jbonofre Jean-Baptiste Onofré added a comment -

        If I start using JDK 1.6 (which includes JAXB 2.2), I haven't any problem.

        So, to be JDK 1.5 compatible in ServiceMix 3, we should embed JAXB 2.2

        Show
        jbonofre Jean-Baptiste Onofré added a comment - If I start using JDK 1.6 (which includes JAXB 2.2), I haven't any problem. So, to be JDK 1.5 compatible in ServiceMix 3, we should embed JAXB 2.2
        Hide
        jbonofre Jean-Baptiste Onofré added a comment -

        Revision 1071629.

        Show
        jbonofre Jean-Baptiste Onofré added a comment - Revision 1071629.

          People

          • Assignee:
            jbonofre Jean-Baptiste Onofré
            Reporter:
            jbonofre Jean-Baptiste Onofré
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development