It seems the CXF components expects the component classloader to be the thread
context classloader, which seems to not be the case in OpenESB.  AFAIK, the spec
does not really specify the behavior in such case, so I suppose it should be in
AsyncBaseLifeCycle (in servicemix-common).   Could you please raise a JIRA ?

On Jan 31, 2008 1:39 PM, khudalla <[EMAIL PROTECTED]> wrote:
>
> Hi,
>
> thanks for the guidance! This has at least enabled me to install the File BC
> into OpenESB. Having been encouraged by this small victory I dared to try to
> install the CXF BC and SE included with ServiceMix 3.2.1 into OpenESB.
> However, when starting up either one of them, OpenESB complains with the
> following ClassNotFound exception:
>
> JBIFW1136: Engine servicemix-cxf-se cannot be initialized. The LifeCycle
> init() method threw a javax.jbi.JBIException exception. The exception
> message is: Error calling init
> javax.jbi.JBIException: Error calling init
>         at
> org.apache.servicemix.common.AsyncBaseLifeCycle.init(AsyncBaseLifeCycle.java:195)
>         at
> com.sun.jbi.framework.ComponentFramework.initializeComponent(ComponentFramework.java:1234)
>         at
> com.sun.jbi.framework.ComponentFramework.startComponent(ComponentFramework.java:1712)
>         at
> com.sun.jbi.framework.ComponentLifeCycle.start(ComponentLifeCycle.java:159)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at
> com.sun.jmx.mbeanserver.StandardMetaDataImpl.invoke(StandardMetaDataImpl.java:414)
>         at javax.management.StandardMBean.invoke(StandardMBean.java:323)
>         at
> com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:213)
>         at
> com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
>         at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:815)
>         at
> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784)
>         at
> com.sun.enterprise.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:178)
>         at
> com.sun.jbi.management.facade.Facade.invokeRemoteVoidOperation(Facade.java:223)
>         at
> com.sun.jbi.management.facade.ComponentLifeCycle.startComponentOnInstance(ComponentLifeCycle.java:471)
>         at
> com.sun.jbi.management.facade.ComponentLifeCycle.start(ComponentLifeCycle.java:101)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at
> com.sun.jmx.mbeanserver.StandardMetaDataImpl.invoke(StandardMetaDataImpl.java:414)
>         at javax.management.StandardMBean.invoke(StandardMBean.java:323)
>         at
> com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:213)
>         at
> com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
>         at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:815)
>         at
> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784)
>         at
> com.sun.enterprise.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:178)
>         at
> com.sun.jbi.ui.runtime.mbeans.AbstractUIMBeanImpl.invokeMBeanOperation(AbstractUIMBeanImpl.java:386)
>         at
> com.sun.jbi.ui.runtime.mbeans.AbstractUIMBeanImpl.invokeMBeanOperation(AbstractUIMBeanImpl.java:449)
>         at
> com.sun.jbi.ui.runtime.mbeans.JBIAdminCommandsUIMBeanImpl.startComponent(JBIAdminCommandsUIMBeanImpl.java:2427)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at
> com.sun.jmx.mbeanserver.StandardMetaDataImpl.invoke(StandardMetaDataImpl.java:414)
>         at javax.management.StandardMBean.invoke(StandardMBean.java:323)
>         at
> com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:213)
>         at
> com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
>         at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:815)
>         at
> com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784)
>         at
> com.sun.enterprise.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:178)
>         at
> com.sun.enterprise.admin.jmx.remote.server.callers.InvokeCaller.call(InvokeCaller.java:69)
>         at
> com.sun.enterprise.admin.jmx.remote.server.MBeanServerRequestHandler.handle(MBeanServerRequestHandler.java:155)
>         at
> com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.processRequest(RemoteJmxConnectorServlet.java:122)
>         at
> com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.doPost(RemoteJmxConnectorServlet.java:193)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:738)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
>         at
> org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
>         at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:290)
>         at
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271)
>         at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202)
>         at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
>         at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
>         at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
>         at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206)
>         at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
>         at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
>         at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
>         at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
>         at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
>         at
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
>         at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
>         at
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:272)
>         at
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637)
>         at
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
>         at
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
>         at
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
>         at
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
>         at
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
>         at
> com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
>         at
> com.sun.enterprise.web.connector.grizzly.WorkerThreadImpl.run(WorkerThreadImpl.java:116)
> Caused by: java.lang.RuntimeException: java.lang.ClassNotFoundException:
> org.apache.cxf.bus.CXFBusFactory
>         at org.apache.cxf.BusFactory.newInstance(BusFactory.java:153)
>         at org.apache.cxf.BusFactory.newInstance(BusFactory.java:132)
>         at org.apache.cxf.BusFactory.getDefaultBus(BusFactory.java:69)
>         at org.apache.cxf.BusFactory.getDefaultBus(BusFactory.java:58)
>         at
> org.apache.servicemix.cxfse.CxfSeComponent.doInit(CxfSeComponent.java:79)
>         at
> org.apache.servicemix.common.AsyncBaseLifeCycle.init(AsyncBaseLifeCycle.java:187)
>         ... 74 more
> Caused by: java.lang.ClassNotFoundException:
> org.apache.cxf.bus.CXFBusFactory
>         at
> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1498)
>         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>         at java.lang.Class.forName0(Native Method)
>         at java.lang.Class.forName(Class.java:242)
>         at org.apache.cxf.BusFactory.newInstance(BusFactory.java:149)
>         ... 79 more
>
>
> I have checked the jbi.xml descriptor of both the SE and BC to include the
> relevant CXF core jar and they both do. Any ideas?
>
> Regards,
> Kai
>
>
> gnodet wrote:
> >
> > Actually, they're not (only servicemix-lwcontainer is).
> > In order to make them deployable in other containers, you need to use the
> > servicemix-shared-compat shared library instead of servicemix-shared.  You
> > can download it from:
> >
> > http://repo1.maven.org/maven2/org/apache/servicemix/servicemix-shared-compat/3.2.1/servicemix-shared-compat-3.2.1-installer.zip
> >
> > If you have any further problems, just ping again.
> >
> >
> >
>
> --
> View this message in context: 
> http://www.nabble.com/JBI-components-cannot-be-deployed-to-other-JBI-containers-tp14948242s12049p15203577.html
>
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/

Reply via email to