Hi all,
I know Tomcat classloading is a hairy subject but I've tried all I could and
would appreciate some help!

I'm using Tomcat 6.0.18 with JDK 1.6
My webapp uses the Weblogic supplied Jython Interpreter called
WLSTInterpreter.

My weblogic.jar is in my WEB-INF/lib directory but for some reason I get the
dreaded ClassNotFoundException for exactly that class. Also, I confirmed
that the weblogic.jar DOES contain the missing class.

Looking at the docs on tomcat's site we see that for webapps the webapp
classloader is consulted first:


> Therefore, from the perspective of a web application, class or resource
> loading looks in the following repositories, in this order:
> 
>     * Bootstrap classes of your JVM
>     * System class loader classses (described above)
>     * /WEB-INF/classes of your web application
>     * /WEB-INF/lib/*.jar of your web application
>     * $CATALINA_HOME/lib
>     * $CATALINA_HOME/lib/*.jar
> 

Can someone glean something from the stack trace below and suggest what
might be going on?
Could it be because of some classes in weblogic.jar that this is happening?
(Using Weblogic 9.2)
I have ensured that weblogic classes do not exist in common/lib. Infact
common/lib has no "extra" jars but what came with the installation.
The front end is icefaces that calls a spring service that, in turn makes a
call to the WLSTInterpreter class and that's where it throws an exception.

Is there anyway to debug what classes are loaded by the webapp classloader?

Thanks,
Pankaj

java.lang.ClassNotFoundException:
weblogic.management.scripting.utils.WLSTInterpreter

org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387)

org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
        java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)

com.fedex.ground.scm.service.WLSTServiceImpl.startApplication(WLSTServiceImpl.java:81)
        com.fedex.ground.scm.TreeBean.processNode(TreeBean.java:112)
        sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        java.lang.reflect.Method.invoke(Method.java:597)
        org.apache.el.parser.AstValue.invoke(AstValue.java:172)
        org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)

com.sun.faces.application.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:71)
        javax.faces.component.UICommand.broadcast(UICommand.java:377)
        com.icesoft.faces.component.tree.Tree.broadcast(Tree.java:1032)

com.icesoft.faces.component.panelseries.UISeries$RowEvent.broadcast(UISeries.java:559)

com.icesoft.faces.component.panelseries.UISeries.broadcast(UISeries.java:238)

com.icesoft.faces.component.paneltabset.PanelTabSet.broadcast(PanelTabSet.java:297)
        javax.faces.component.UIData.broadcast(UIData.java:849)

com.icesoft.faces.component.panelseries.UISeries.broadcast(UISeries.java:233)

com.icesoft.faces.component.paneltabset.PanelTabSet.broadcast(PanelTabSet.java:297)
        javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:452)
        javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:764)

com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97)
        com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:266)
        com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:132)

com.icesoft.faces.webapp.http.core.JsfLifecycleExecutor.apply(JsfLifecycleExecutor.java:17)

com.icesoft.faces.webapp.http.core.ReceiveSendUpdates.renderCyclePartial(ReceiveSendUpdates.java:64)

com.icesoft.faces.webapp.http.core.ReceiveSendUpdates.service(ReceiveSendUpdates.java:40)

com.icesoft.faces.webapp.http.core.ViewBoundServer.service(ViewBoundServer.java:65)

com.icesoft.faces.webapp.http.core.RequestVerifier.service(RequestVerifier.java:44)

com.icesoft.faces.webapp.http.common.standard.PathDispatcherServer$Matcher.serviceOnMatch(PathDispatcherServer.java:50)

com.icesoft.faces.webapp.http.common.standard.PathDispatcherServer.service(PathDispatcherServer.java:19)

com.icesoft.faces.webapp.http.servlet.ThreadBlockingAdaptingServlet.service(ThreadBlockingAdaptingServlet.java:19)

com.icesoft.faces.webapp.http.servlet.EnvironmentAdaptingServlet.service(EnvironmentAdaptingServlet.java:63)

com.icesoft.faces.webapp.http.servlet.MainSessionBoundServlet.service(MainSessionBoundServlet.java:139)

com.icesoft.faces.webapp.http.servlet.SessionDispatcher.service(SessionDispatcher.java:53)

com.icesoft.faces.webapp.http.servlet.PathDispatcher$Matcher.serviceOnMatch(PathDispatcher.java:52)

com.icesoft.faces.webapp.http.servlet.PathDispatcher.service(PathDispatcher.java:29)

com.icesoft.faces.webapp.http.servlet.MainServlet.service(MainServlet.java:82)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

com.icesoft.faces.webapp.xmlhttp.BlockingServlet.service(BlockingServlet.java:46)


-- 
View this message in context: 
http://www.nabble.com/WLSTInterpreter-classloading-tp24063925p24063925.html
Sent from the Tomcat - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to