JB, 

Thanks for the response and valuable comment.  
As far as my understanding, servicemix war file allways create a runtime
data, servicemixDB folder in root directory(in weblogic domain directory).
All the installed components and associated jars , service assemblies
associated jars would reside in data directory. I have explored the data
directory and extracted and saw the classes are avaiable in this directory. 

But i am confused how to specify to weblogic classloader to pick the class
from above mentioned  data directory created by servicemix more over this
directory conaints dynamic data it will be determined on runtime. I have
issues only with scripting component, other SEs ,and BCs are perfectly
working, 

Please help me on this 

Regards
Brijesh N K   



Jean-Baptiste Onofré wrote:
> 
> Hi Brijesh,
> 
> I think the issue is due to the WLS classloader policy.
> 
> WebLogic Server classloading is centered on the concept of an 
> application. An application is normally packaged in an Enterprise 
> Archive (EAR) file containing application classes. Everything within an 
> EAR file is considered part of the same application. The following may 
> be part of an EAR or can be loaded as standalone applications:
> 
>      * An Enterprise JavaBean (EJB) JAR file
>      * A Web application WAR file
>      * A resource adapter RAR file
> 
> The classloader hierarchy is, by default:
> WebApp -> EJB -> WLS main classloader.
> 
> Remember that one time you go up in the classloader hierarchy, it's not 
> possible to come back down.
> 
> Nevertheless, you can define your classloader structure in the 
> weblogic-application.xml using:
> 
>      <classloader-structure>
>       <module-ref>
>               <module-uri>ejb1.jar</module-uri>
>       </module-ref>
>       <module-ref>
>               <module-uri>web3.war</module-uri>
>       </module-ref>
>       <classloader-structure>
>               <module-ref>
>                       <module-uri>web1.war</module-uri>
>               </module-ref>
>       </classloader-structure>
>       <classloader-structure>
>               <module-ref>
>                       <module-uri>ejb3.jar</module-uri>
>               </module-ref>
>               <module-ref>
>                       <module-uri>web2.war</module-uri>
>               </module-ref>
>               <classloader-structure>
>                       <module-ref>
>                               <module-uri>web4.war</module-uri>
>                       </module-ref>
>               </classloader-structure>
>               <classloader-structure>
>                       <module-ref>
>                               <module-uri>ejb2.jar</module-uri>
>                       </module-ref>
>               </classloader-structure>
>       </classloader-structure>
>      </classloader-structure>
> 
> In your case, your don't have a ClassNotFoundException, you have a 
> NoClassDefFoundError. It means that the class is found but not in the 
> correct classloader.
> 
> Could you make a try using a global classloader for your EAR (not 
> splitted by war/ejb) ?
> 
> Regards
> JB
> 
> brijesh wrote:
>> hello , 
>> 
>> I did servicemix3.3.war deployment  in weblogic 10 as part of an other
>> ear
>> file. I have service assembly which uses smx-scripting component as part
>> of
>> workflow. When i am calling this service I am getting following fault
>> mesage, 
>> 
>> 
>> <faultcode>soap:Server</faultcode>
>>          <faultstring>java.lang.NoClassDefFoundError:
>> groovy/lang/GroovyObject</faultstring>
>> 
>> 
>> When I deploy as war file , without using ear file this service assembly
>> works absoulutely fine. When I deploy war file as part of ear file i am
>> getting above mentioned error , complete error stack as below 
>> 
>> 
>> org.apache.cxf.interceptor.Fault: java.lang.NoClassDefFoundError:
>> groovy/lang/GroovyObject
>>         at
>> org.apache.servicemix.cxfbc.CxfBcConsumer$JbiPostInvokerInterceptor.handleMessage(CxfBcConsumer.java:769)
>>         at
>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
>>         at
>> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:89)
>>         at
>> org.apache.servicemix.cxfbc.CxfBcConsumer$JbiChainInitiationObserver.onMessage(CxfBcConsumer.java:631)
>>         at
>> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(JettyHTTPDestination.java:302)
>>         at
>> org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.java:265)
>>         at
>> org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:70)
>>         at
>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
>>         at
>> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
>>         at
>> org.mortbay.jetty.handler.HandlerList.handle(HandlerList.java:49)
>>         at
>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>>         at org.mortbay.jetty.Server.handle(Server.java:324)
>>         at
>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:534)
>>         at
>> org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:879)
>>         at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:741)
>>         at
>> org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:213)
>>         at
>> org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:403)
>>         at
>> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
>>         at
>> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:522)
>> Caused by: java.lang.Exception: java.lang.NoClassDefFoundError:
>> groovy/lang/GroovyObject
>>         at
>> org.apache.servicemix.common.AsyncBaseLifeCycle.onMessageExchange(AsyncBaseLifeCycle.java:550)
>>         at
>> org.apache.servicemix.common.SyncLifeCycleWrapper.onMessageExchange(SyncLifeCycleWrapper.java:60)
>>         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)
>> Caused by: java.lang.NoClassDefFoundError: groovy/lang/GroovyObject
>>         at java.lang.ClassLoader.defineClass1(Native Method)
>>         at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
>>         at
>> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
>>         at
>> weblogic.utils.classloaders.GenericClassLoader.defineClass(GenericClassLoader.java:338)
>>         at
>> weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:291)
>>         at
>> weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:259)
>>         at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>>         at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
>>         at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>>         at
>> weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:179)
>>         at
>> weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:35)
>>         at
>> org.apache.xbean.classloader.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:184)
>>         at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>>         at
>> org.apache.xbean.classloader.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:184)
>>         at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>>         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>>         at java.lang.Class.forName0(Native Method)
>>         at java.lang.Class.forName(Class.java:164)
>>         at
>> groovy.lang.MetaClassRegistry$MetaClassCreationHandle.create(MetaClassRegistry.java:81)
>>         at
>> org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.getGlobalMetaClass(MetaClassRegistryImpl.java:252)
>>         at
>> org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.access$100(MetaClassRegistryImpl.java:45)
>>         at
>> org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl$LocallyKnownClasses.getFromGlobal(MetaClassRegistryImpl
>>         at
>> org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl$LocallyKnownClasses.getMetaClass(MetaClassRegistryImpl.
>>         at
>> org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl$MyThreadLocal.getMetaClass(MetaClassRegistryImpl.java:3
>>         at
>> org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.getMetaClass(MetaClassRegistryImpl.java:265)
>>         at
>> org.codehaus.groovy.runtime.InvokerHelper.invokePojoMethod(InvokerHelper.java:765)
>>         at
>> org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:754)
>>         at
>> org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:170)
>>         at Script1.run(Script1.groovy:24)
>>         at
>> com.sun.script.groovy.GroovyScriptEngine.eval(GroovyScriptEngine.java:243)
>>         at
>> com.sun.script.groovy.GroovyCompiledScript.eval(GroovyCompiledScript.java:46)
>>         at javax.script.CompiledScript.eval(CompiledScript.java:44)
>>         at
>> org.apache.servicemix.scripting.ScriptingEndpoint.process(ScriptingEndpoint.java:300)
>>         at
>> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:627)
>>         at
>> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:581)
>>         at
>> org.apache.servicemix.common.AsyncBaseLifeCycle.onMessageExchange(AsyncBaseLifeCycle.java:535)
>>         ... 8 more
>> 
>> 
>> Any idea on this? 
>> 
>> Regards
>> Brijesh N K
> 
> 

-- 
View this message in context: 
http://www.nabble.com/smx-war-deployment-in-weblogic-10-tp23959703p23963469.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to