Details

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

      Description

      In examples/basic, when testing the example with:

      mvn jbi:embeddedServicemix

      the ServiceMix container doesn't start:

      2011-05-02 11:01:27,700 [main ] INFO ileSystemXmlApplicationContext - Refreshing org.apache.xbean.spring.context.FileSystemXmlApplicationContext@1fe28a7: display name [org.apache.xbean.spring.context.FileSystemXmlApplicationContext@1fe28a7]; startup date [Mon May 02 11:01:27 CEST 2011]; root of context hierarchy
      2011-05-02 11:01:27,844 [main ] INFO XBeanXmlBeanDefinitionReader - Loading XML bean definitions from URL file:////home/onofreje/workspace/smx/smx3/distributions/apache-servicemix/target/apache-servicemix-3.4-SNAPSHOT/examples/basic/src/main/resources/servicemix.xml
      2011-05-02 11:01:29,034 [main ] INFO ileSystemXmlApplicationContext - Bean factory for application context [org.apache.xbean.spring.context.FileSystemXmlApplicationContext@1fe28a7]: org.springframework.beans.factory.support.DefaultListableBeanFactory@717ef5
      2011-05-02 11:01:29,059 [main ] INFO DefaultListableBeanFactory - Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@717ef5: defining beans [jbi,transactionManager,workManager,bootstrapContext,activeMQResourceAdapter,broker,jmsFactory]; root of factory hierarchy
      2011-05-02 11:01:29,136 [main ] WARN EndpointRegistry - Disabled endpoint processor 'org.apache.servicemix.jbi.framework.support.WSDL2Processor': java.lang.NoClassDefFoundError: org/apache/woden/WSDLReader
      SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
      SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
      2011-05-02 11:01:29,371 [main ] INFO DefaultListableBeanFactory - Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@717ef5: defining beans [jbi,transactionManager,workManager,bootstrapContext,activeMQResourceAdapter,broker,jmsFactory]; root of factory hierarchy
      [INFO] ------------------------------------------------------------------------
      [INFO] BUILD FAILURE
      [INFO] ------------------------------------------------------------------------
      [INFO] Total time: 20.861s
      [INFO] Finished at: Mon May 02 11:01:29 CEST 2011
      [INFO] Final Memory: 17M/149M
      [INFO] ------------------------------------------------------------------------
      [ERROR] Failed to execute goal org.apache.servicemix.tooling:jbi-maven-plugin:4.4:embeddedServicemix (default-cli) on project basic: Unable to start the ServiceMix container: Error creating bean with name 'jbi' defined in URL file:////home/onofreje/workspace/smx/smx3/distributions/apache-servicemix/target/apache-servicemix-3.4-SNAPSHOT/examples/basic/src/main/resources/servicemix.xml: Cannot resolve reference to bean 'transactionManager' while setting bean property 'transactionManager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transactionManager': FactoryBean threw exception on object creation; nested exception is java.lang.NoClassDefFoundError: org/slf4j/impl/StaticLoggerBinder: org.slf4j.impl.StaticLoggerBinder -> [Help 1]

      SLF4J dependency is missing.

        Activity

        Hide
        jbonofre Jean-Baptiste Onofré added a comment -

        The dependency is not required by ServiceMix itself but by AMQ pool (as ActiveMQ now uses SLF4J as default logger).

        Show
        jbonofre Jean-Baptiste Onofré added a comment - The dependency is not required by ServiceMix itself but by AMQ pool (as ActiveMQ now uses SLF4J as default logger).
        Hide
        jbonofre Jean-Baptiste Onofré added a comment -

        I updated JBI maven plugin (4.5-SNAPSHOT) to include the required dependencies:
        revision 1098528.

        Show
        jbonofre Jean-Baptiste Onofré added a comment - I updated JBI maven plugin (4.5-SNAPSHOT) to include the required dependencies: revision 1098528.
        Hide
        ceki@qos.ch Ceki Gülcü added a comment -

        FYI, as of SLF4J version 1.6, slf4j-api.jar is the only mandatory dependency for SLF4J. If no binding is found on the class path, then SLF4J will default to a no-operation implementation. See also http://slf4j.org/manual.html#libraries

        HTH,

        Show
        ceki@qos.ch Ceki Gülcü added a comment - FYI, as of SLF4J version 1.6, slf4j-api.jar is the only mandatory dependency for SLF4J. If no binding is found on the class path, then SLF4J will default to a no-operation implementation. See also http://slf4j.org/manual.html#libraries HTH,
        Hide
        jbonofre Jean-Baptiste Onofré added a comment -

        The servicemix.xml is now valid and well formed.

        I have now another issue:

        INFO: Initializing component: inputReceiver
        May 2, 2011 2:07:11 PM org.apache.geronimo.kernel.log.GeronimoLog info
        INFO: Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@1871a69: defining beans [jbi,transactionManager,workManager,bootstrapContext,activeMQResourceAdapter,broker,jmsFactory]; root of factory hierarchy
        [INFO] ------------------------------------------------------------------------
        [ERROR] BUILD ERROR
        [INFO] ------------------------------------------------------------------------
        [INFO] Unable to start the ServiceMix container

        Embedded error: Error creating bean with name 'jbi' defined in URL file:////home/onofreje/workspace/smx/smx3/samples/basic/target/basic-3.4-SNAPSHOT/target/classes/servicemix.xml: Invocation of init method failed; nested exception is java.lang.NoSuchFieldError: logger
        [INFO] ------------------------------------------------------------------------
        [INFO] For more information, run Maven with the -e switch
        [INFO] ------------------------------------------------------------------------
        [INFO] Total time: 18 seconds
        [INFO] Finished at: Mon May 02 14:07:12 CEST 2011
        [INFO] Final Memory: 44M/183M
        [INFO] ------------------------------------------------------------------------

        Show
        jbonofre Jean-Baptiste Onofré added a comment - The servicemix.xml is now valid and well formed. I have now another issue: INFO: Initializing component: inputReceiver May 2, 2011 2:07:11 PM org.apache.geronimo.kernel.log.GeronimoLog info INFO: Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@1871a69: defining beans [jbi,transactionManager,workManager,bootstrapContext,activeMQResourceAdapter,broker,jmsFactory] ; root of factory hierarchy [INFO] ------------------------------------------------------------------------ [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Unable to start the ServiceMix container Embedded error: Error creating bean with name 'jbi' defined in URL file:////home/onofreje/workspace/smx/smx3/samples/basic/target/basic-3.4-SNAPSHOT/target/classes/servicemix.xml : Invocation of init method failed; nested exception is java.lang.NoSuchFieldError: logger [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ [INFO] Total time: 18 seconds [INFO] Finished at: Mon May 02 14:07:12 CEST 2011 [INFO] Final Memory: 44M/183M [INFO] ------------------------------------------------------------------------
        Hide
        jbonofre Jean-Baptiste Onofré added a comment -

        I fix the dependencies issue (revision 1098631).

        The example now runs but have an issue:

        2011-05-03 08:13:59,899 [main ] INFO ComponentMBeanImpl - Initializing component: trace
        2011-05-03 08:13:59,905 [main ] WARN ClientFactory - Cound not start ClientFactory: javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
        2011-05-03 08:13:59,909 [main ] INFO QuartzScheduler - Scheduler DefaultQuartzScheduler_$_NON_CLUSTERED started.
        2011-05-03 08:13:59,953 [main ] INFO ActiveMQEndpointWorker - Starting
        2011-05-03 08:13:59,986 [main ] INFO ActiveMQEndpointWorker - Starting
        2011-05-03 08:13:59,987 [pool-2-thread-1] INFO ActiveMQEndpointWorker - Establishing connection to broker [tcp://localhost:61616]
        2011-05-03 08:13:59,989 [pool-2-thread-2] INFO ActiveMQEndpointWorker - Establishing connection to broker [tcp://localhost:61616]
        2011-05-03 08:13:59,996 [main ] INFO JBIContainer - ServiceMix JBI Container (ServiceMix) started
        2011-05-03 08:14:00,249 [JMX connector ] WARN ManagementContext - Failed to start jmx connector: Cannot bind to URL [rmi://localhost:1099/jmxrmi]: javax.naming.NameAlreadyBoundException: jmxrmi [Root exception is java.rmi.AlreadyBoundException: jmxrmi]
        2011-05-03 08:14:00,346 [main ] INFO BrokerService - Using Persistence Adapter: MemoryPersistenceAdapter
        2011-05-03 08:14:00,354 [main ] INFO BrokerService - ActiveMQ 5.4.2 JMS Message Broker (localhost) is starting
        2011-05-03 08:14:00,354 [main ] INFO BrokerService - For help or more information please see: http://activemq.apache.org/
        2011-05-03 08:14:00,648 [Sender-thread-1] ERROR JmsComponent - Error processing exchange InOnly[
        id: ID:192.168.134.2-12fb47d315a-7:0
        status: Active
        role: provider
        mep: http://www.w3.org/2004/08/wsdl/in-only
        service:

        {http://servicemix.apache.org/demo/}

        inputSender
        endpoint: endpoint
        properties: [
        org.apache.servicemix.flow = Seda
        org.apache.servicemix.datestamp = 5/3/11 8:13 AM
        ]
        in: <?xml version="1.0" encoding="UTF-8"?><timer><name>My Example Job</name><group>ServiceMix</group><fullname>ServiceMix.My Example Job</fullname><description/><fireTime>Tue May 03 08:13:59 CEST 2011</fireTime></timer>
        ]
        java.lang.NullPointerException
        at org.apache.servicemix.jms.DefaultJmsMarshaler.toJMS(DefaultJmsMarshaler.java:92)
        at org.apache.servicemix.jms.DefaultJmsMarshaler.toJMS(DefaultJmsMarshaler.java:116)
        at org.apache.servicemix.jms.AbstractJmsProcessor.fromNMS(AbstractJmsProcessor.java:216)
        at org.apache.servicemix.jms.AbstractJmsProcessor.createMessageFromExchange(AbstractJmsProcessor.java:263)
        at org.apache.servicemix.jms.multiplexing.MultiplexingProviderProcessor.process(MultiplexingProviderProcessor.java:117)
        at org.apache.servicemix.soap.SoapEndpoint.process(SoapEndpoint.java:400)
        at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:651)
        at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:606)
        at org.apache.servicemix.common.AsyncBaseLifeCycle.onMessageExchange(AsyncBaseLifeCycle.java:560)
        at org.apache.servicemix.common.SyncLifeCycleWrapper.onMessageExchange(SyncLifeCycleWrapper.java:60)
        at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:631)
        at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:185)
        at org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:168)
        at org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)
        2011-05-03 08:14:00,654 [JMX connector ] WARN ManagementContext - Failed to start jmx connector: Cannot bind to URL [rmi://localhost:1099/jmxrmi]: javax.naming.NameAlreadyBoundException: jmxrmi [Root exception is java.rmi.AlreadyBoundException: jmxrmi]
        2011-05-03 08:14:00,725 [main ] INFO TransportServerThreadSupport - Listening for connections at: tcp://localhost:61616

        Show
        jbonofre Jean-Baptiste Onofré added a comment - I fix the dependencies issue (revision 1098631). The example now runs but have an issue: 2011-05-03 08:13:59,899 [main ] INFO ComponentMBeanImpl - Initializing component: trace 2011-05-03 08:13:59,905 [main ] WARN ClientFactory - Cound not start ClientFactory: javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial 2011-05-03 08:13:59,909 [main ] INFO QuartzScheduler - Scheduler DefaultQuartzScheduler_$_NON_CLUSTERED started. 2011-05-03 08:13:59,953 [main ] INFO ActiveMQEndpointWorker - Starting 2011-05-03 08:13:59,986 [main ] INFO ActiveMQEndpointWorker - Starting 2011-05-03 08:13:59,987 [pool-2-thread-1] INFO ActiveMQEndpointWorker - Establishing connection to broker [tcp://localhost:61616] 2011-05-03 08:13:59,989 [pool-2-thread-2] INFO ActiveMQEndpointWorker - Establishing connection to broker [tcp://localhost:61616] 2011-05-03 08:13:59,996 [main ] INFO JBIContainer - ServiceMix JBI Container (ServiceMix) started 2011-05-03 08:14:00,249 [JMX connector ] WARN ManagementContext - Failed to start jmx connector: Cannot bind to URL [rmi://localhost:1099/jmxrmi] : javax.naming.NameAlreadyBoundException: jmxrmi [Root exception is java.rmi.AlreadyBoundException: jmxrmi] 2011-05-03 08:14:00,346 [main ] INFO BrokerService - Using Persistence Adapter: MemoryPersistenceAdapter 2011-05-03 08:14:00,354 [main ] INFO BrokerService - ActiveMQ 5.4.2 JMS Message Broker (localhost) is starting 2011-05-03 08:14:00,354 [main ] INFO BrokerService - For help or more information please see: http://activemq.apache.org/ 2011-05-03 08:14:00,648 [Sender-thread-1] ERROR JmsComponent - Error processing exchange InOnly[ id: ID:192.168.134.2-12fb47d315a-7:0 status: Active role: provider mep: http://www.w3.org/2004/08/wsdl/in-only service: {http://servicemix.apache.org/demo/} inputSender endpoint: endpoint properties: [ org.apache.servicemix.flow = Seda org.apache.servicemix.datestamp = 5/3/11 8:13 AM ] in: <?xml version="1.0" encoding="UTF-8"?><timer><name>My Example Job</name><group>ServiceMix</group><fullname>ServiceMix.My Example Job</fullname><description/><fireTime>Tue May 03 08:13:59 CEST 2011</fireTime></timer> ] java.lang.NullPointerException at org.apache.servicemix.jms.DefaultJmsMarshaler.toJMS(DefaultJmsMarshaler.java:92) at org.apache.servicemix.jms.DefaultJmsMarshaler.toJMS(DefaultJmsMarshaler.java:116) at org.apache.servicemix.jms.AbstractJmsProcessor.fromNMS(AbstractJmsProcessor.java:216) at org.apache.servicemix.jms.AbstractJmsProcessor.createMessageFromExchange(AbstractJmsProcessor.java:263) at org.apache.servicemix.jms.multiplexing.MultiplexingProviderProcessor.process(MultiplexingProviderProcessor.java:117) at org.apache.servicemix.soap.SoapEndpoint.process(SoapEndpoint.java:400) at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:651) at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:606) at org.apache.servicemix.common.AsyncBaseLifeCycle.onMessageExchange(AsyncBaseLifeCycle.java:560) at org.apache.servicemix.common.SyncLifeCycleWrapper.onMessageExchange(SyncLifeCycleWrapper.java:60) at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:631) at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:185) at org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:168) at org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) at java.lang.Thread.run(Thread.java:595) 2011-05-03 08:14:00,654 [JMX connector ] WARN ManagementContext - Failed to start jmx connector: Cannot bind to URL [rmi://localhost:1099/jmxrmi] : javax.naming.NameAlreadyBoundException: jmxrmi [Root exception is java.rmi.AlreadyBoundException: jmxrmi] 2011-05-03 08:14:00,725 [main ] INFO TransportServerThreadSupport - Listening for connections at: tcp://localhost:61616
        Hide
        jbonofre Jean-Baptiste Onofré added a comment -

        The issue was that the JCA pooled connection factory doesn't wait the broker (depends-on not present).

        To be able to use depends-on, I use the Spring definition of the connection factory (and not the xbean like format).

        Show
        jbonofre Jean-Baptiste Onofré added a comment - The issue was that the JCA pooled connection factory doesn't wait the broker (depends-on not present). To be able to use depends-on, I use the Spring definition of the connection factory (and not the xbean like format).
        Hide
        jbonofre Jean-Baptiste Onofré added a comment -

        Revision 1098981.

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

          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