3 Replies Latest reply on Mar 3, 2011 7:57 PM by ffang

    WS-Security UsernameTokenAction not found from bundle

    omaro82_omar.cruz

      Hi,

       

      We are currently evaluating FUSE ESB and while performing some load testing to the new created services we have encountered the following problem. Some of the request are actually went through OK but we see the error attached below every two or three requests.

       

      The intergation uses a JBI to expose a webservice using CXF Binding Component. The messages recieved is routed with camel which calls an external web service that has WS-Security UsernameToken authentication.

       

      Any help will be gladly appreciated.

       

      Regards.

       

      org.apache.ws.security.action.UsernameTokenAction not found from bundle feis-services-camel-osgi

      java.lang.ClassNotFoundException: org.apache.ws.security.action.UsernameTokenAction not found from bundle feis-services-camel-osgi

      at org.springframework.osgi.util.BundleDelegatingClassLoader.findClass(BundleDelegatingClassLoader.java:103)71:org.springframework.osgi.core:1.2.0

      at org.springframework.osgi.util.BundleDelegatingClassLoader.loadClass(BundleDelegatingClassLoader.java:156)71:org.springframework.osgi.core:1.2.0

      at java.lang.ClassLoader.loadClass(ClassLoader.java:619):1.6.0

      at org.apache.ws.security.util.Loader.loadClass(Loader.java:185)129:org.apache.ws.security.wss4j:1.5.9

      at org.apache.ws.security.util.Loader.loadClass(Loader.java:177)129:org.apache.ws.security.wss4j:1.5.9

      at org.apache.ws.security.WSSConfig.getAction(WSSConfig.java:505)129:org.apache.ws.security.wss4j:1.5.9

      at org.apache.ws.security.handler.WSHandler.doSenderAction(WSHandler.java:205)129:org.apache.ws.security.wss4j:1.5.9

      at org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor.access$200(WSS4JOutInterceptor.java:50)137:org.apache.cxf.bundle:2.3.2.fuse-00-00

      at org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor$WSS4JOutInterceptorInternal.handleMessage(WSS4JOutInterceptor.java:257)137:org.apache.cxf.bundle:2.3.2.fuse-00-00

      at org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor$WSS4JOutInterceptorInternal.handleMessage(WSS4JOutInterceptor.java:134)137:org.apache.cxf.bundle:2.3.2.fuse-00-00

      at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:255)137:org.apache.cxf.bundle:2.3.2.fuse-00-00

      at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:454)137:org.apache.cxf.bundle:2.3.2.fuse-00-00

      at org.apache.camel.component.cxf.CxfProducer.process(CxfProducer.java:94)206:org.apache.camel.camel-cxf:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:104)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:272)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:62)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:299)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:208)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:269)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.Pipeline.process(Pipeline.java:125)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:132)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:62)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:61)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:104)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:272)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:62)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:299)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:208)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:269)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.Pipeline.process(Pipeline.java:125)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:132)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:62)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:61)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:104)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:272)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:299)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:208)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:269)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.ChoiceProcessor.process(ChoiceProcessor.java:80)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:62)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:299)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:208)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:269)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.Pipeline.process(Pipeline.java:125)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:102)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:62)68:org.apache.camel.camel-core:2.6.0.fuse-00-00

      at org.apache.servicemix.camel.CamelProviderEndpoint$1.call(CamelProviderEndpoint.java:109)168:servicemix-camel:2011.01.0.fuse-00-00

      at org.apache.servicemix.camel.JbiBinding.runWithCamelContextClassLoader(JbiBinding.java:116)168:servicemix-camel:2011.01.0.fuse-00-00

      at org.apache.servicemix.camel.CamelProviderEndpoint.handleActiveProviderExchange(CamelProviderEndpoint.java:107)168:servicemix-camel:2011.01.0.fuse-00-00

      at org.apache.servicemix.camel.CamelProviderEndpoint.process(CamelProviderEndpoint.java:85)168:servicemix-camel:2011.01.0.fuse-00-00

      at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:651)90:servicemix-common:2011.01.0.fuse-00-00

      at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:606)90:servicemix-common:2011.01.0.fuse-00-00

      at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchangeInTx(AsyncBaseLifeCycle.java:501)90:servicemix-common:2011.01.0.fuse-00-00

      at org.apache.servicemix.common.AsyncBaseLifeCycle$2.run(AsyncBaseLifeCycle.java:370)90:servicemix-common:2011.01.0.fuse-00-00

      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897):1.6.0

      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919):1.6.0

      at java.lang.Thread.run(Thread.java:736):1.6.0

      Caused by: java.lang.ClassNotFoundException: org.apache.ws.security.action.UsernameTokenAction

      at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:506)osgi-3.6.0.v20100517.jar:

      at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)osgi-3.6.0.v20100517.jar:

      at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)osgi-3.6.0.v20100517.jar:

      at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:103)osgi-3.6.0.v20100517.jar:

      at java.lang.ClassLoader.loadClass(ClassLoader.java:619):1.6.0

      at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:338)osgi-3.6.0.v20100517.jar:

      at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:232)osgi-3.6.0.v20100517.jar:

      at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1197)osgi-3.6.0.v20100517.jar:

      at org.springframework.osgi.util.BundleDelegatingClassLoader.findClass(BundleDelegatingClassLoader.java:99)71:org.springframework.osgi.core:1.2.0

      ... 110 more

        • 1. Re: WS-Security UsernameTokenAction not found from bundle
          ffang

          Hi,

           

          Could you add org.apache.ws.security.action Import-Package for your customer feis-services-camel-osgi bundle to see if it helps.

           

          Btw, we have a cxf-ws-security-osgi example shipped with distro which use ws-security UsernameToken action, which should be similar with your scenaron, you may need take a look.

           

          Freeman

          • 2. Re: WS-Security UsernameTokenAction not found from bundle
            omaro82_omar.cruz

            Hi Freeman,

             

            Thanks for the quick response. As you suggested I verified the Import-Packages for my bundle and specifically the org.apache.ws.security.action package was't there although I it did have defined the parent package org.apache.ws.security. After adding this package the service started working correctly.

             

            I'm using the maven-bundle-plugin in order to create the OSGI bundle and it didn't add this package. Do you know if I have to do something in order for the bundling to be done correctly?

            • 3. Re: WS-Security UsernameTokenAction not found from bundle
              ffang

              Hi,

               

              IIRC, if you wanna import any sub-package under org.apache.ws.security, you need use

              org.apache.ws.security* or org.apache.ws.security.*.

               

              Freeman