Uploaded image for project: 'ServiceMix Components'
  1. ServiceMix Components
  2. SMXCOMP-824

REOPEN -Problem with CXF SE component after stop and restart

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 3.2.1
    • 2013.02
    • servicemix-cxf-se
    • None
    • Patch Available

    Description

      Hello,

      Using ServiceMix 3.2.2 I encounter a NullPointerException receiving requests on a CXF Se component after stopping and restarting this component.
      The problem can be seen using the wsdl-first sample.
      The same problem occurs after doing a shutdown and restart of the component.
      See traces below.

      Regards,
      Nelly

      Traces:
      ======

      >>>>>>> no problem at the beginning for the cxf-se:
      11:28:19,167 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-1 | SedaQueue | .jbi.nmr.flow.seda.SedaQueue$1 132 | org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@ce4f39 dequeued exchange: InOut[
      id: ID:16.17.2.253-119e199379f-4:0
      status: Active
      role: provider
      interface:

      {http://servicemix.apache.org/samples/wsdl-first}

      Person
      service:

      {http://servicemix.apache.org/samples/wsdl-first}

      PersonService
      endpoint: PersonImplPort
      operation:

      {http://servicemix.apache.org/samples/wsdl-first}

      GetPerson
      in: <?xml version="1.0" encoding="UTF-8"?><jbi:message xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper" xmlns:msg="http://servicemix.apache.org/samples/wsdl-first" name="GetPersonRequest" type="msg:GetPersonRequest" version="1.0"><jbi:part><tns:GetPerson xmlns:tns="http://servicemix.apache.org/samples/wsdl-first/types">
      <tns:personId xmlns:tns="http://servicemix.apache.org/samples/wsdl-first/types">world</tns:personId>
      </tns:GetPerson></jbi:part></jbi:message>
      ]
      11:28:19,177 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-1 | CxfSeComponent | emix.common.AsyncBaseLifeCycle 468 | Received exchange: status: Active, role: provider
      11:28:19,177 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-1 | CxfSeComponent | emix.common.AsyncBaseLifeCycle 536 | Retrieved correlation id: ID:16.17.2.253-119e199379f-4:0
      11:28:19,788 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-1 | DeliveryChannelImpl | .messaging.DeliveryChannelImpl 425 | Send ID:16.17.2.253-119e199379f-4:0 in DeliveryChannel

      {servicemix-cxf-se}
      11:28:19,788 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-1 | SedaFlow | emix.jbi.nmr.flow.AbstractFlow 118 | Called Flow send
      11:28:19,798 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-2 | SedaQueue | .jbi.nmr.flow.seda.SedaQueue$1 132 | org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@6bfafb dequeued exchange: InOut[
      id: ID:16.17.2.253-119e199379f-4:0
      status: Active
      role: consumer
      interface: {http://servicemix.apache.org/samples/wsdl-first}Person
      service: {http://servicemix.apache.org/samples/wsdl-first}PersonService
      endpoint: PersonImplPort
      operation: {http://servicemix.apache.org/samples/wsdl-first}GetPerson
      in: <?xml version="1.0" encoding="UTF-8"?><jbi:message xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper" xmlns:msg="http://servicemix.apache.org/samples/wsdl-first" name="GetPersonRequest" type="msg:GetPersonRequest" version="1.0"><jbi:part><tns:GetPerson xmlns:tns="http://servicemix.apache.org/samples/wsdl-first/types">
      <tns:personId xmlns:tns="http://servicemix.apache.org/samples/wsdl-first/types">world</tns:personId>
      </tns:GetPerson></jbi:part></jbi:message>
      out: <?xml version="1.0" encoding="UTF-8"?><jbi:message xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper" xmlns:msg="http://servicemix.apache.org/samples/wsdl-first" type="msg:GetPersonResponse"><jbi:part><GetPersonResponse xmlns="http://servicemix.apache.org/samples/wsdl-first/types"><personId>world</personId><ssn>000-000-0000</ssn><name>Guillaume</name></GetPersonResponse></jbi:part></jbi:message>
      ]
      11:28:19,818 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-2 | DeliveryChannelImpl | .messaging.DeliveryChannelImpl 710 | Notifying exchange ID:16.17.2.253-119e199379f-4:0(16ff34d) in DeliveryChannel{servicemix-cxf-bc} from processInboundSynchronousExchange
      11:28:19,818 | DEBUG | btpool0-1 | DeliveryChannelImpl | .messaging.DeliveryChannelImpl 704 | Notified: ID:16.17.2.253-119e199379f-4:0(16ff34d) in DeliveryChannel{servicemix-cxf-bc} from sendSync
      11:28:19,879 | DEBUG | btpool0-1 | DeliveryChannelImpl | .messaging.DeliveryChannelImpl 425 | Send ID:16.17.2.253-119e199379f-4:0 in DeliveryChannel{servicemix-cxf-bc}
      11:28:19,879 | DEBUG | btpool0-1 | SedaFlow | emix.jbi.nmr.flow.AbstractFlow 118 | Called Flow send
      11:28:19,889 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-3 | SedaQueue | .jbi.nmr.flow.seda.SedaQueue$1 132 | org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@815832 dequeued exchange: InOut[
      id: ID:16.17.2.253-119e199379f-4:0
      status: Done
      role: provider
      interface: {http://servicemix.apache.org/samples/wsdl-first}Person
      service: {http://servicemix.apache.org/samples/wsdl-first}PersonService
      endpoint: PersonImplPort
      operation: {http://servicemix.apache.org/samples/wsdl-first}GetPerson
      in: <?xml version="1.0" encoding="UTF-8"?><jbi:message xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper" xmlns:msg="http://servicemix.apache.org/samples/wsdl-first" name="GetPersonRequest" type="msg:GetPersonRequest" version="1.0"><jbi:part><tns:GetPerson xmlns:tns="http://servicemix.apache.org/samples/wsdl-first/types">
      <tns:personId xmlns:tns="http://servicemix.apache.org/samples/wsdl-first/types">world</tns:personId>
      </tns:GetPerson></jbi:part></jbi:message>
      out: <?xml version="1.0" encoding="UTF-8"?><jbi:message xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper" xmlns:msg="http://servicemix.apache.org/samples/wsdl-first" type="msg:GetPersonResponse"><jbi:part><GetPersonResponse xmlns="http://servicemix.apache.org/samples/wsdl-first/types"><personId>world</personId><ssn>000-000-0000</ssn><name>Guillaume</name></GetPersonResponse></jbi:part></jbi:message>
      ]
      11:28:19,889 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-3 | CxfSeComponent | emix.common.AsyncBaseLifeCycle 468 | Received exchange: status: Done, role: provider
      11:28:19,889 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-3 | CxfSeComponent | emix.common.AsyncBaseLifeCycle 536 | Retrieved correlation id: ID:16.17.2.253-119e199379f-4:0
      11:29:01,262 | DEBUG | RMI TCP Connection(4)-16.17.2.253 | AASAuthenticationService | impl.JAASAuthenticationService 50 | Authenticating 'smx' with 'smx'


      >>>>>> Stopping the wsdl-first-cxf-sa assembly:
      11:29:23,276 | INFO | RMI TCP Connection(5)-16.17.2.253 | ServiceAssemblyLifeCycle | ework.ServiceAssemblyLifeCycle 161 | Stopping service assembly: wsdl-first-cxf-sa
      11:29:23,276 | INFO | RMI TCP Connection(5)-16.17.2.253 | ServiceUnitLifeCycle | framework.ServiceUnitLifeCycle 115 | Stopping service unit: wsdl-first-cxfse-su
      11:29:23,286 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | CxfSeComponent | .common.BaseServiceUnitManager 171 | Stopping service unit
      11:29:23,286 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | JCAFlow | cemix.jbi.nmr.flow.jca.JCAFlow 398 | ServiceMix: broadcasting info for org.apache.servicemix.jbi.event.EndpointEvent[source=ServiceEndpoint[service={http://servicemix.apache.org/samples/wsdl-first}PersonService,endpoint=PersonImplPort]]
      11:29:23,296 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | JMSFlow | i.nmr.flow.jms.AbstractJMSFlow 378 | ServiceMix: broadcasting info for org.apache.servicemix.jbi.event.EndpointEvent[source=ServiceEndpoint[service={http://servicemix.apache.org/samples/wsdl-first}PersonService,endpoint=PersonImplPort]]
      11:29:23,296 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | CxfSeComponent | .common.BaseServiceUnitManager 186 | Service unit stopped
      11:29:23,476 | INFO | RMI TCP Connection(5)-16.17.2.253 | ServiceUnitLifeCycle | framework.ServiceUnitLifeCycle 115 | Stopping service unit: wsdl-first-cxfbc-su
      11:29:23,476 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | CxfBcComponent | .common.BaseServiceUnitManager 171 | Stopping service unit
      11:29:23,476 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | CxfBcComponent | .common.BaseServiceUnitManager 186 | Service unit stopped

      >>>>>> Starting the wsdl-first-cxf-sa assembly
      11:29:34,053 | INFO | RMI TCP Connection(5)-16.17.2.253 | ServiceAssemblyLifeCycle | ework.ServiceAssemblyLifeCycle 111 | Starting service assembly: wsdl-first-cxf-sa
      11:29:34,063 | INFO | RMI TCP Connection(5)-16.17.2.253 | ServiceUnitLifeCycle | framework.ServiceUnitLifeCycle 97 | Starting service unit: wsdl-first-cxfse-su
      11:29:34,063 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | CxfSeComponent | .common.BaseServiceUnitManager 137 | Starting service unit
      11:29:34,083 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | ComponentContextImpl | framework.ComponentContextImpl 124 | Component: servicemix-cxf-se activated endpoint: {http://servicemix.apache.org/samples/wsdl-first}PersonService : PersonImplPort
      11:29:34,083 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | CxfSeComponent | icemix.common.DefaultComponent 79 | Querying service description for ServiceEndpoint[service={http://servicemix.apache.org/samples/wsdl-first}PersonService,endpoint=PersonImplPort]
      11:29:34,093 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | WSDL1Processor | amework.support.WSDL1Processor 110 | Endpoint ServiceEndpoint[service={http://servicemix.apache.org/samples/wsdl-first}PersonService,endpoint=PersonImplPort] implements interface {http://servicemix.apache.org/samples/wsdl-first}Person
      11:29:34,093 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | CxfSeComponent | icemix.common.DefaultComponent 79 | Querying service description for ServiceEndpoint[service={http://servicemix.apache.org/samples/wsdl-first}PersonService,endpoint=PersonImplPort]
      11:29:34,093 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | WSDL2Processor | amework.support.WSDL2Processor 70 | Endpoint ServiceEndpoint[service={http://servicemix.apache.org/samples/wsdl-first}PersonService,endpoint=PersonImplPort] has a non WSDL2 service description
      11:29:34,103 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | JCAFlow | cemix.jbi.nmr.flow.jca.JCAFlow 381 | ServiceMix: broadcasting info for org.apache.servicemix.jbi.event.EndpointEvent[source=ServiceEndpoint[service={http://servicemix.apache.org/samples/wsdl-first}PersonService,endpoint=PersonImplPort]]
      11:29:34,113 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | JMSFlow | i.nmr.flow.jms.AbstractJMSFlow 378 | ServiceMix: broadcasting info for org.apache.servicemix.jbi.event.EndpointEvent[source=ServiceEndpoint[service={http://servicemix.apache.org/samples/wsdl-first}PersonService,endpoint=PersonImplPort]]
      11:29:34,123 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | CxfSeComponent | servicemix.cxfse.CxfSeEndpoint 279 | Unable to inject ComponentContext: org.apache.servicemix.samples.wsdl_first.PersonImpl.setContext(javax.jbi.component.ComponentContext)
      11:29:34,123 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | CxfSeComponent | .common.BaseServiceUnitManager 153 | Service unit started
      11:29:34,133 | INFO | RMI TCP Connection(5)-16.17.2.253 | ServiceUnitLifeCycle | framework.ServiceUnitLifeCycle 97 | Starting service unit: wsdl-first-cxfbc-su
      11:29:34,133 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | CxfBcComponent | .common.BaseServiceUnitManager 137 | Starting service unit
      11:29:34,133 | DEBUG | RMI TCP Connection(5)-16.17.2.253 | CxfBcComponent | .common.BaseServiceUnitManager 153 | Service unit started


      >>>>>> send request
      11:29:40,182 | DEBUG | btpool0-2 | CxfBcComponent | emix.common.AsyncBaseLifeCycle 587 | Created correlation id: ID:16.17.2.253-119e199379f-4:1
      11:29:40,192 | DEBUG | btpool0-2 | DeliveryChannelImpl | .messaging.DeliveryChannelImpl 458 | SendSync ID:16.17.2.253-119e199379f-4:1 in DeliveryChannel{servicemix-cxf-bc}
      11:29:40,192 | DEBUG | btpool0-2 | SedaFlow | emix.jbi.nmr.flow.AbstractFlow 118 | Called Flow send
      11:29:40,202 | DEBUG | btpool0-2 | DeliveryChannelImpl | .messaging.DeliveryChannelImpl 693 | Waiting for exchange ID:16.17.2.253-119e199379f-4:1 (2f40f4) to be answered in DeliveryChannel{servicemix-cxf-bc} from sendSync
      11:29:40,212 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-4 | SedaQueue | .jbi.nmr.flow.seda.SedaQueue$1 132 | org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@517b46 dequeued exchange: InOut[
      id: ID:16.17.2.253-119e199379f-4:1
      status: Active
      role: provider
      interface: {http://servicemix.apache.org/samples/wsdl-first}Person
      service: {http://servicemix.apache.org/samples/wsdl-first}PersonService
      endpoint: PersonImplPort
      operation: {http://servicemix.apache.org/samples/wsdl-first}GetPerson
      in: <?xml version="1.0" encoding="UTF-8"?><jbi:message xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper" xmlns:msg="http://servicemix.apache.org/samples/wsdl-first" name="GetPersonRequest" type="msg:GetPersonRequest" version="1.0"><jbi:part><tns:GetPerson xmlns:tns="http://servicemix.apache.org/samples/wsdl-first/types">
      <tns:personId xmlns:tns="http://servicemix.apache.org/samples/wsdl-first/types">world</tns:personId>
      </tns:GetPerson></jbi:part></jbi:message>
      ]
      11:29:40,232 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-4 | CxfSeComponent | emix.common.AsyncBaseLifeCycle 468 | Received exchange: status: Active, role: provider
      11:29:40,232 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-4 | CxfSeComponent | emix.common.AsyncBaseLifeCycle 536 | Retrieved correlation id: ID:16.17.2.253-119e199379f-4:1
      11:29:40,282 | ERROR | pool-flow.seda.servicemix-cxf-se-thread-4 | CxfSeComponent | ervicemix.common.BaseLifeCycle 48 | Error processing exchange InOut[
      id: ID:16.17.2.253-119e199379f-4:1
      status: Active
      role: provider
      interface: {http://servicemix.apache.org/samples/wsdl-first}Person
      service: {http://servicemix.apache.org/samples/wsdl-first}PersonService
      endpoint: PersonImplPort
      operation: {http://servicemix.apache.org/samples/wsdl-first}GetPerson
      in: <?xml version="1.0" encoding="UTF-8"?><jbi:message xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper" xmlns:msg="http://servicemix.apache.org/samples/wsdl-first" name="GetPersonRequest" type="msg:GetPersonRequest" version="1.0"><jbi:part><tns:GetPerson xmlns:tns="http://servicemix.apache.org/samples/wsdl-first/types">
      <tns:personId xmlns:tns="http://servicemix.apache.org/samples/wsdl-first/types">world</tns:personId>
      </tns:GetPerson></jbi:part></jbi:message>
      ]
      java.lang.NullPointerException
      at org.apache.servicemix.cxfse.CxfSeEndpoint.process(CxfSeEndpoint.java:200)
      at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:538)
      at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:490)
      at org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
      at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:610)
      at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:172)
      at org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:167)
      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)
      11:29:40,292 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-4 | DeliveryChannelImpl | .messaging.DeliveryChannelImpl 425 | Send ID:16.17.2.253-119e199379f-4:1 in DeliveryChannel{servicemix-cxf-se}

      11:29:40,292 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-4 | SedaFlow | emix.jbi.nmr.flow.AbstractFlow 118 | Called Flow send
      11:29:40,302 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-4 | SedaQueue | .jbi.nmr.flow.seda.SedaQueue$1 132 | org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@1110caf dequeued exchange: InOut[
      id: ID:16.17.2.253-119e199379f-4:1
      status: Error
      role: consumer
      interface:

      {http://servicemix.apache.org/samples/wsdl-first}

      Person
      service:

      {http://servicemix.apache.org/samples/wsdl-first}

      PersonService
      endpoint: PersonImplPort
      operation:

      {http://servicemix.apache.org/samples/wsdl-first}

      GetPerson
      in: <?xml version="1.0" encoding="UTF-8"?><jbi:message xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper" xmlns:msg="http://servicemix.apache.org/samples/wsdl-first" name="GetPersonRequest" type="msg:GetPersonRequest" version="1.0"><jbi:part><tns:GetPerson xmlns:tns="http://servicemix.apache.org/samples/wsdl-first/types">
      <tns:personId xmlns:tns="http://servicemix.apache.org/samples/wsdl-first/types">world</tns:personId>
      </tns:GetPerson></jbi:part></jbi:message>
      error: java.lang.NullPointerException
      ]
      11:29:40,312 | DEBUG | pool-flow.seda.servicemix-cxf-se-thread-4 | DeliveryChannelImpl | .messaging.DeliveryChannelImpl 710 | Notifying exchange ID:16.17.2.253-119e199379f-4:1(2f40f4) in DeliveryChannel

      {servicemix-cxf-bc} from processInboundSynchronousExchange
      11:29:40,312 | DEBUG | btpool0-2 | DeliveryChannelImpl | .messaging.DeliveryChannelImpl 704 | Notified: ID:16.17.2.253-119e199379f-4:1(2f40f4) in DeliveryChannel{servicemix-cxf-bc}

      from sendSync

      Attachments

        1. servicemix-cxf-se-2009.02.reproduce.patch
          2 kB
          Nikolay Martynov
        2. servicemix-cxf-se-2009.02.debug.patch
          3 kB
          Nikolay Martynov
        3. servicemix-cxf-se-2009.02.fix.patch
          12 kB
          Nikolay Martynov
        4. XBeanServiceUnit.java.fix.excessive.logging.patch
          2 kB
          Nikolay Martynov

        Issue Links

          Activity

            People

              ffang Freeman Yue Fang
              nickolay_martinov Nikolay Martynov
              Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: