Uploaded image for project: 'FUSE Mediation Router'
  1. FUSE Mediation Router
  2. MR-126

A Camel SU with camel-mina endpoint won't deploy to servicemix container due to inconsistency of the camel-mina dependencies

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Critical Critical
    • 1.5.2.0-fuse
    • 1.5.0.0-fuse
    • None
    • None

      It seems that if a Camel SU contains a camel-mina endpoint, then it won't deploy into servicemix container. Below is a snippet of stack trace:

      11:20:31,705 | ERROR | Timer-4    | AutoDeploymentService    | ramework.AutoDeploymentService  486 | Failed to update Service Assembly: 
      camel-sa-3.3.1.11-fuse.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-camel</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>Could not deploy xbean service unit</loc-message>
      </msg-loc-info>
      </task-status-msg>
      	<exception-info>
      	    <nesting-level>1</nesting-level>
      		<msg-loc-info>
      			<loc-token/>
      			<loc-message>java.lang.NoSuchFieldError: name</loc-message>
      			<stack-trace><![CDATA[org.apache.xbean.kernel.ServiceRegistrationException: java.lang.NoSuchFieldError: name
      	at org.apache.xbean.kernel.standard.ServiceManagerRegistry.registerService(ServiceManagerRegistry.java:424)
      	at org.apache.xbean.kernel.standard.StandardKernel.registerService(StandardKernel.java:220)
      	at org.apache.xbean.server.spring.loader.SpringLoader.load(SpringLoader.java:152)
      	at org.apache.servicemix.common.xbean.AbstractXBeanDeployer.deploy(AbstractXBeanDeployer.java:83)
      	at org.apache.servicemix.camel.CamelSpringDeployer.deploy(CamelSpringDeployer.java:83)
      	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:482)
      	at org.apache.servicemix.jbi.framework.AutoDeploymentService.checkPendingComponents(AutoDeploymentService.java:535)
      	at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateSharedLibrary(AutoDeploymentService.java:317)
      	at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:254)
      	at org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(AutoDeploymentService.java:667)
      	at org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDeploymentService.java:62)
      	at org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploymentService.java:631)
      	at java.util.TimerThread.mainLoop(Timer.java:512)
      	at java.util.TimerThread.run(Timer.java:462)
      Caused by: java.lang.NoSuchFieldError: name
      	at org.slf4j.impl.SimpleLogger.<init>(SimpleLogger.java:83)
      	at org.slf4j.impl.SimpleLoggerFactory.getLogger(SimpleLoggerFactory.java:67)
      	at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:103)
      	at org.apache.mina.util.NamePreservingRunnable.<init>(NamePreservingRunnable.java:32)
      	at org.apache.mina.transport.socket.nio.SocketAcceptor.startupWorker(SocketAcceptor.java:165)
      	at org.apache.mina.transport.socket.nio.SocketAcceptor.bind(SocketAcceptor.java:141)
      	at org.apache.camel.component.mina.MinaConsumer.doStart(MinaConsumer.java:60)
      	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:47)
      	at org.apache.camel.impl.DefaultCamelContext.addService(DefaultCamelContext.java:421)
      	at org.apache.camel.impl.DefaultCamelContext.startRoutes(DefaultCamelContext.java:659)
      	at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:632)
      	at org.apache.camel.spring.SpringCamelContext.maybeDoStart(SpringCamelContext.java:167)
      	at org.apache.camel.spring.SpringCamelContext.doStart(SpringCamelContext.java:162)
      	at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:47)
      	at org.apache.camel.spring.SpringCamelContext.maybeStart(SpringCamelContext.java:97)
      	at org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:116)
      	at org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:77)
      	at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49)
      	at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:75)
      	at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:246)
      	at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:617)
      	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:355)
      	at org.apache.xbean.server.spring.configuration.SpringConfiguration.<init>(SpringConfiguration.java:63)
      	at org.apache.xbean.server.spring.configuration.SpringConfigurationServiceFactory.createService(SpringConfigurationServiceFactory.java:106)
      	at org.apache.xbean.kernel.standard.ServiceManager.start(ServiceManager.java:420)
      	at org.apache.xbean.kernel.standard.ServiceManager.initialize(ServiceManager.java:200)
      	at org.apache.xbean.kernel.standard.RegistryFutureTask$RegisterCallable.call(RegistryFutureTask.java:110)
      	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:123)
      	at org.apache.xbean.kernel.standard.ServiceManagerRegistry.registerService(ServiceManagerRegistry.java:409)
      

      It looks like that the camel-mina component depends on both mina-core 1.1.7 (http://mina.apache.org/) and slf4j 1.5.5 (http://www.slf4j.org/) while the mina-core 1.1.7 itself depends on slf4j 1.4.3 however.

      Please see attached test case and servicemix log file for more details.

            janstey@redhat.com Jonathan Anstey
            rhn-support-qluo Joe Luo
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: