Tomcat ClassLoader HOWTO describes exactly how Tomcat finds classes:

http://jakarta.apache.org/tomcat/tomcat-4.1-doc/class-loader-howto.html

John


> -----Original Message-----
> From: Bill [mailto:[EMAIL PROTECTED]]
> Sent: Wednesday, September 25, 2002 10:31 PM
> To: Tomcat Users List
> Subject: Re: Question from a newbie on running a web application
> 
> 
> Hi Yiqun,
> Thanks for reply.
> I check what you said...
> All of the classes you mentioned, and also the classes that 
> showed up in the
> exception stack are in the jar files in /shared/lib, with the 
> exception of
> com.tad.security.core.tadmimp.logon.TADLogonServlet (which is in
> /WEB-INF/*).
> 
> But, I do believe what you said is probably right.  There is 
> a conflict some
> place between the locations of the jars and classes.
> 
> Thanks and regards,
> Bill
> 
> ----- Original Message -----
> From: "Wu Yiqun" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Wednesday, September 25, 2002 8:53 PM
> Subject: RE: Question from a newbie on running a web application
> 
> 
> Hi, Bill:
>  I have encounter some similar problems.  Maybe this problem 
> is cause by
> following
> reason (I am not sure). You have a user class
> com.tad.security.core.logon.imp.LoginContext.
> This is at /WEB-INF/*, while you call  
> javax.security.auth.Subject. This is
> at /shared/lib,
> while it also EXIST in /server/lib in Tomcat 4.1. For some 
> reason, the one
> in /server/lib
> is used. And this is a tomcat internal class reposity, it 
> cannot seen the
> user class.
> Then strange thing happens. Maybe the writer of tomcat classloader can
> answer our question.
> My email similar to this issue at
> http://marc.theaimsgroup.com/?l=tomcat-user&m=103292834825643&w=2.
> 
> Regards.
> 
> 
> -----Original Message-----
> From: Bill [mailto:[EMAIL PROTECTED]]
> Sent: Thursday, September 26, 2002 7:46 AM
> To: tomcat-user
> Subject: Question from a newbie on running a web application
> 
> 
> Hi,
> I just installed Tomcat 4.1 and tried my web application.  
> But, ran into an
> exception which I have tried to resolved for most of the day, 
> without any
> success.
> 
> This is the steps I used:
> 1.  copied the application jar files to %CATALINA_HOME%\shared\lib
> 2.  copied the war file to %CATALINA_HOME%\webapps
> 
> When tomcat started, the war file expanded into the subdirectories
> correctly.  However, once I started to run the web 
> application, I got the
> following exception.  A couple of questions came out of this:
> 
> 1.  Why do some of the class have "Unkknown Source"?
> 2.  The not-found class,  
> javax.security.auth.SubjectDomainCombiner, belongs
> to Sun's jaas.jar, which is in the shared\lib directory.  
> This jar also
> contains the class, javax.security.auth.Subject, which is the 
> class before
> the not-found class in the exception...this doesn't make much sense to
> me...how can a class being called by another class in the same jar be
> not-found?
> 
> I also moved the jaas.jar to other lib's, e.g. \common\lib, 
> with the same
> error.
> 
> Did I miss something?
> 
> Pls help...thnx,
> Bill
> 
> 
> 
> java.lang.ExceptionInInitializerError: java.lang.SecurityException:
> java.lang.ClassNotFoundException: 
> javax.security.auth.SubjectDomainCombiner
> at javax.security.auth.Subject.(Subject.java:170)
> at 
> com.tad.security.core.logon.imp.LoginContext.personalizeReques
> t(Unknown
> Source)
> at 
> com.tad.security.core.logon.imp.JUMAuthenticator.logon(Unknown Source)
> at com.tad.security.core.tadmimp.logon.TADLogonServlet.doLogon(Unknown
> Source)
> at
> com.tad.security.core.tadmimp.logon.TADLogonServlet.uidPasswor
> dLogon(Unknown
> Source)
> at com.tad.security.core.tadmimp.logon.TADLogonServlet.doPost(Unknown
> Source)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:1145)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:1264)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Application
> FilterChain.java:247)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilterCh
> ain.java:193)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValve.ja
> va:260)
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.invok
> eNext(StandardPipeline.java:643)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:480)
> at 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValve.ja
> va:191)
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.invok
> eNext(StandardPipeline.java:643)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:480)
> at 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> org.apache.catalina.core.StandardContext.invoke(StandardContex
> t.java:2397)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java:180
> )
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.invok
> eNext(StandardPipeline.java:643)
> at
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDi
> spatcherValve.
> java:170)
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.invok
> eNext(StandardPipeline.java:641)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java:171
> )
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.invok
> eNext(StandardPipeline.java:641)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:480)
> at 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.java
> :174)
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.invok
> eNext(StandardPipeline.java:643)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:480)
> at 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at 
> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.
> java:223)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:405)
> at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processConne
> ction(Http11Protocol.java:380)
> at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:508)
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool.jav
> a:533)
> at java.lang.Thread.run(Thread.java:484)
> 
> 
> 
> 
> 
> 
> --
> To unsubscribe, e-mail:
> <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
> 
> 
> 
> 
> 
> --
> To unsubscribe, e-mail:   
<mailto:[EMAIL PROTECTED]>
For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to