You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Rainer Frey <fr...@inxmail.de> on 2007/08/16 09:44:38 UTC

JSP compile error - required library in tomcat/shared/lib

Hi all,

after moving a jar file from tomcat/common/lib to tomcat/shared/lib, JSPs
that use that library don't compile anymore, it says package does not
exist. It is a library from my company, used by all webapps in the server
installation. It used to be in tomcat/common/lib as it was used by a 
tomcat
valve that exists no longer. As it now needs other libraries in
tomcat/shared/lib, we want to move it.

Now, the classloader howto says:

> Common - This class loader contains additional classes that are made
> visible
> to both Tomcat internal classes and to all web applications. Normally,
> application classes should NOT be placed here.
>
> Shared - This class loader is the place to put classes and resources
> that you wish to share across ALL web applications (unless Tomcat
> internal classes also need access, in which case you should put them in
> the Common class loader instead)

This library is only used in our application code, mostly in servlets, but
also in some JSP, which can use it after being compiled. Only compiling
doesn't work. Logically, this is thus no code that tomcat internal classes
need.

One can argue, however, that the JSP compiler is a tomcat internal class,
and that using a library as compile class path means that this internal
class needs it, and it thus needs to be in tomcat/common/lib.

For me, this is not intuive, though, and I couldn't find any explicit
documentation about it. My question is now:
Must all libraries that contain classes used in JSPs be in 
tomcat/common/lib
(or WEB-INF/lib), or is this a bug in tomcat, or is this an error in our
installation/configuration?

Thanks,
Rainer Frey

P.S.:Here is the stack trace, showing no tomcat/shared/lib/anything in
classpath:

SEVERE: Javac exception
Compile failed; see the compiler error output for details.
        at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:944)
        at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:764)
        at
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:373)
        at org.apache.jasper.compiler.Compiler.compile(Compiler.java:441)
        at org.apache.jasper.compiler.Compiler.compile(Compiler.java:422)
        at
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:507)
        at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:274)
        at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
        at 
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
        at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
        at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
        at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
        at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540)
        at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
        at
org.apache.catalina.valves.RequestFilterValve.process(RequestFilterValve.java:287)
        at
org.apache.catalina.valves.RemoteAddrValve.invoke(RemoteAddrValve.java:84)
        at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
        at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
        at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
        at
org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:417)
        at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
        at
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:793)
        at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:702)
        at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:571)
        at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:644)
        at java.lang.Thread.run(Thread.java:619)
15.08.2007 12:50:39 org.apache.jasper.compiler.Compiler generateClass
SEVERE: Env: Compile:
javaFileName=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm//org/apache/jsp/index_jsp.java
   
classpath=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/inxmail_admin.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/log4j.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/inxmail_admin.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/log4j.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-ant.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-cluster.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-i18n-es.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-i18n-fr.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-i18n-ja.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-optional.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-beanutils.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-digester.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-fileupload-1.0.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-modeler.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/inxmailerror.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/jakarta-regexp-1.3.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/jkconfig.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/jkshm.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-common.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-default.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-invoker.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-webdav.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-coyote.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-http11.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-jk.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-jk2.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-jni.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-util.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/classes/:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/endorsed/xercesImpl.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/endorsed/xmlParserAPIs.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/ant.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-collections.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-dbcp-1.1.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-el.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-pool-1.1.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/jasper-compiler.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/jasper-runtime.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/jsp-api.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-common.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-factory.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-java.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-resources.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/servlet-api.jar:/opt/jdk1.6.0/lib/tools.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/bin/bootstrap.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/bin/commons-logging-api.jar:/opt/jdk1.6.0/jre/lib/ext/sunjce_provider.jar:/opt/jdk1.6.0/jre/lib/ext/sunpkcs11.jar:/opt/jdk1.6.0/jre/lib/ext/dnsns.jar:/opt/jdk1.6.0/jre/lib/ext/localedata.jar
   
cp=/opt/java/lib/tools.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/bin/bootstrap.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/bin/commons-logging-api.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/inxmail_admin.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/log4j.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/inxmail_admin.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/log4j.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-ant.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-cluster.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-i18n-es.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-i18n-fr.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-i18n-ja.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-optional.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-beanutils.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-digester.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-fileupload-1.0.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-modeler.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/inxmailerror.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/jakarta-regexp-1.3.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/jkconfig.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/jkshm.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-common.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-default.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-invoker.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-webdav.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-coyote.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-http11.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-jk.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-jk2.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-jni.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-util.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/classes
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/endorsed/xercesImpl.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/endorsed/xmlParserAPIs.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/ant.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-collections.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-dbcp-1.1.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-el.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-pool-1.1.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/jasper-compiler.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/jasper-runtime.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/jsp-api.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-common.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-factory.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-java.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-resources.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/servlet-api.jar
    cp=/opt/jdk1.6.0/lib/tools.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/bin/bootstrap.jar
   
cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/bin/commons-logging-api.jar
    cp=/opt/jdk1.6.0/jre/lib/ext/sunjce_provider.jar
    cp=/opt/jdk1.6.0/jre/lib/ext/sunpkcs11.jar
    cp=/opt/jdk1.6.0/jre/lib/ext/dnsns.jar
    cp=/opt/jdk1.6.0/jre/lib/ext/localedata.jar
    work
dir=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm
    extension dir=/opt/jdk1.6.0/jre/lib/ext:/usr/java/packages/lib/ext
   
srcDir=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm
    include=org/apache/jsp/index_jsp.java

15.08.2007 12:50:39 org.apache.jasper.compiler.Compiler generateClass
SEVERE: Error compiling
file: /home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm//org/apache/jsp/index_jsp.java    
[javac] Compiling 1 source file

/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm/org/apache/jsp/index_jsp.java:20:
package com.inxmail.util does not exist
import com.inxmail.util.StringUtils;
                       ^
/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm/org/apache/jsp/index_jsp.java:159:
cannot find symbol
symbol  : variable StringUtils
location: class org.apache.jsp.index_jsp
                                entry.setValue( StringUtils.replaceAll( (
String )entry.getValue(), "$$INXMAIL_DIR$$",
                                                ^
-- 
Inxmail GmbH
Web: http://www.inxmail.de
Handelsregister Freiburg, HRB 5870
USt-Id DE198371679
Geschäftsleitung Martin Bucher, Peter Ziras 

Re: JSP compile error - required library in tomcat/shared/lib

Posted by Rainer Frey <fr...@inxmail.de>.
Hi David,

thanks for your answer. What I forgot to say is that I use Tomcat 5.0.28. 
I'll comment inline to your options.

On Thursday 16 August 2007 10:41:30 David Delbecq wrote:
> As you guessed would be intuitive, yes, the JSP compiler include
> classes in shared/lib (and also classes in webapp itself).

Good to know.

> The shared/lib is the same as if you copy it's content to the
> WEB-INF/lib folder. As your compiler does not include the shared/lib in
> it's classpath, there can be various reason
>
> 1) You did not copy your jar to shared/lib. Considering the path of
> your tomcat, it's not unreasonnable to think be you copied it to
> another to tomcat :)

This installation is a nightly build of our application tomcat bundle, 
that contained the library in question in shared/lib.

> 2) You did copy, but after startup of tomcat. Restart tomcat.

It was already there before the first start.

> 3) Your jar is broken (not ending with .jar, corrupted) and classloader
> ignored it. Sun JAR classloader, from my experience, tend to load what
> is availabe from truncated .jar without warning of truncation. As a
> consequence only half of jar content is used.

It worked after moving it to common/lib.

> 4) You use a non tomcat provided webappClassloader that forgets to load
> shared/lib. If that's the case, you are probably already aware of that
> fact :)

Never used any custom classloader at all. On a previous installation, it 
worked with the library in shared/lib for servlets and already compiled 
JSPs.

> 5) A Cosmic ray did randomly swap a bit in your memory. That's how
> experts explained an incorrect pooling result with electronic voting
> device a few years ago in Belgium :D.

Sounds most plausibe then. Problem is, it happened with two installations 
on two machines at different times. So - probably also not the case :-)

So: how does the building of the classpath for JSP compilation work? 
Shouldn't all available libraries be on it? or only libraries that the 
JSP tries to use? There are many more libraries in shared/lib, and none 
is listed in the classpath of the error message.

Rainer
>
> En l'instant précis du 16/08/07 09:44, Rainer Frey s'exprimait en ces
>
> termes:
> > Hi all,
> >
> > after moving a jar file from tomcat/common/lib to tomcat/shared/lib,
> > JSPs that use that library don't compile anymore, it says package
> > does not exist. It is a library from my company, used by all webapps
> > in the server installation. It used to be in tomcat/common/lib as it
> > was used by a tomcat
> > valve that exists no longer. As it now needs other libraries in
> > tomcat/shared/lib, we want to move it.
> >
> > Now, the classloader howto says:
> >> Common - This class loader contains additional classes that are made
> >> visible
> >> to both Tomcat internal classes and to all web applications.
> >> Normally, application classes should NOT be placed here.
> >>
> >> Shared - This class loader is the place to put classes and resources
> >> that you wish to share across ALL web applications (unless Tomcat
> >> internal classes also need access, in which case you should put them
> >> in the Common class loader instead)
> >
> > This library is only used in our application code, mostly in
> > servlets, but also in some JSP, which can use it after being
> > compiled. Only compiling doesn't work. Logically, this is thus no
> > code that tomcat internal classes need.
> >
> > One can argue, however, that the JSP compiler is a tomcat internal
> > class, and that using a library as compile class path means that this
> > internal class needs it, and it thus needs to be in
> > tomcat/common/lib.
> >
> > For me, this is not intuive, though, and I couldn't find any explicit
> > documentation about it. My question is now:
> > Must all libraries that contain classes used in JSPs be in
> > tomcat/common/lib
> > (or WEB-INF/lib), or is this a bug in tomcat, or is this an error in
> > our installation/configuration?
> >
> > Thanks,
> > Rainer Frey
> >
> > P.S.:Here is the stack trace, showing no tomcat/shared/lib/anything
> > in classpath:
> >
> > SEVERE: Javac exception
> > Compile failed; see the compiler error output for details.
> >         at
> > org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:944) at
> > org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:764) at
> > org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:373)
> >         at
> > org.apache.jasper.compiler.Compiler.compile(Compiler.java:441) at
> > org.apache.jasper.compiler.Compiler.compile(Compiler.java:422) at
> > org.apache.jasper.JspCompilationContext.compile(JspCompilationContext
> >.java:507) at
> > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper
> >.java:274) at
> > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:2
> >92) at
> > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
> >         at
> > javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at
> > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> >icationFilterChain.java:237) at
> > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> >ilterChain.java:157) at
> > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
> >alve.java:214) at
> > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
> >eContext.java:104) at
> > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
> >a:520) at
> > org.apache.catalina.core.StandardContextValve.invokeInternal(Standard
> >ContextValve.java:198) at
> > org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
> >alve.java:152) at
> > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
> >eContext.java:104) at
> > org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authentica
> >torBase.java:540) at
> > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
> >eContext.java:102) at
> > org.apache.catalina.valves.RequestFilterValve.process(RequestFilterVa
> >lve.java:287) at
> > org.apache.catalina.valves.RemoteAddrValve.invoke(RemoteAddrValve.jav
> >a:84) at
> > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
> >eContext.java:102) at
> > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
> >a:520) at
> > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
> >ava:137) at
> > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
> >eContext.java:104) at
> > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
> >ava:117) at
> > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
> >eContext.java:102) at
> > org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.ja
> >va:417) at
> > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
> >eContext.java:102) at
> > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
> >a:520) at
> > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
> >ve.java:109) at
> > org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv
> >eContext.java:104) at
> > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
> >a:520) at
> > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
> >         at
> > org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:16
> >0) at
> > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
> >:793) at
> > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
> >ssConnection(Http11Protocol.java:702) at
> > org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java
> >:571) at
> > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP
> >ool.java:644) at java.lang.Thread.run(Thread.java:619)
> > 15.08.2007 12:50:39 org.apache.jasper.compiler.Compiler generateClass
> > SEVERE: Env: Compile:
> > javaFileName=/home/rfy/development/inxmail/installation/070815/inxmai
> >l-3.5-server/tomcat/work/Catalina/localhost/inxadm//org/apache/jsp/ind
> >ex_jsp.java
> >
> > classpath=/home/rfy/development/inxmail/installation/070815/inxmail-3
> >.5-server/webapps/inxadm/WEB-INF/lib/inxmail_admin.jar:/home/rfy/devel
> >opment/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/W
> >EB-INF/lib/log4j.jar:/home/rfy/development/inxmail/installation/070815
> >/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm:/home/rfy/de
> >velopment/inxmail/installation/070815/inxmail-3.5-server/webapps/inxad
> >m/WEB-INF/lib/inxmail_admin.jar:/home/rfy/development/inxmail/installa
> >tion/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/log4j.jar:/h
> >ome/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tom
> >cat/server/lib/catalina-ant.jar:/home/rfy/development/inxmail/installa
> >tion/070815/inxmail-3.5-server/tomcat/server/lib/catalina-cluster.jar:
> >/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/t
> >omcat/server/lib/catalina-i18n-es.jar:/home/rfy/development/inxmail/in
> >stallation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-i18n-f
> >r.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-se
> >rver/tomcat/server/lib/catalina-i18n-ja.jar:/home/rfy/development/inxm
> >ail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-
> >optional.jar:/home/rfy/development/inxmail/installation/070815/inxmail
> >-3.5-server/tomcat/server/lib/catalina.jar:/home/rfy/development/inxma
> >il/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-be
> >anutils.jar:/home/rfy/development/inxmail/installation/070815/inxmail-
> >3.5-server/tomcat/server/lib/commons-digester.jar:/home/rfy/developmen
> >t/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/com
> >mons-fileupload-1.0.jar:/home/rfy/development/inxmail/installation/070
> >815/inxmail-3.5-server/tomcat/server/lib/commons-modeler.jar:/home/rfy
> >/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/ser
> >ver/lib/inxmailerror.jar:/home/rfy/development/inxmail/installation/07
> >0815/inxmail-3.5-server/tomcat/server/lib/jakarta-regexp-1.3.jar:/home
> >/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat
> >/server/lib/jkconf i
> > g.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-s
> >erver/tomcat/server/lib/jkshm.jar:/home/rfy/development/inxmail/instal
> >lation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-common.jar
> >:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/
> >tomcat/server/lib/servlets-default.jar:/home/rfy/development/inxmail/i
> >nstallation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-invok
> >er.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-s
> >erver/tomcat/server/lib/servlets-webdav.jar:/home/rfy/development/inxm
> >ail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-co
> >yote.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5
> >-server/tomcat/server/lib/tomcat-http11.jar:/home/rfy/development/inxm
> >ail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-jk
> >.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-ser
> >ver/tomcat/server/lib/tomcat-jk2.jar:/home/rfy/development/inxmail/ins
> >tallation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-jni.jar:/
> >home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/to
> >mcat/server/lib/tomcat-util.jar:/home/rfy/development/inxmail/installa
> >tion/070815/inxmail-3.5-server/tomcat/common/classes/:/home/rfy/develo
> >pment/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/end
> >orsed/xercesImpl.jar:/home/rfy/development/inxmail/installation/070815
> >/inxmail-3.5-server/tomcat/common/endorsed/xmlParserAPIs.jar:/home/rfy
> >/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/com
> >mon/lib/ant.jar:/home/rfy/development/inxmail/installation/070815/inxm
> >ail-3.5-server/tomcat/common/lib/commons-collections.jar:/home/rfy/dev
> >elopment/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/
> >lib/commons-dbcp-1.1.jar:/home/rfy/development/inxmail/installation/07
> >0815/inxmail-3.5-server/tomcat/common/lib/commons-el.jar:/home/rfy/dev
> >elopment/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/
> >lib/commons-pool-1.1.jar:/home/rfy/development/inxmail/installation/07
> >0815/inxmail-3.5-s e
> > rver/tomcat/common/lib/jasper-compiler.jar:/home/rfy/development/inxm
> >ail/installation/070815/inxmail-3.5-server/tomcat/common/lib/jasper-ru
> >ntime.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.
> >5-server/tomcat/common/lib/jsp-api.jar:/home/rfy/development/inxmail/i
> >nstallation/070815/inxmail-3.5-server/tomcat/common/lib/naming-common.
> >jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/lib/naming-factory.jar:/home/rfy/development/inxmail/
> >installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-java.j
> >ar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serve
> >r/tomcat/common/lib/naming-resources.jar:/home/rfy/development/inxmail
> >/installation/070815/inxmail-3.5-server/tomcat/common/lib/servlet-api.
> >jar:/opt/jdk1.6.0/lib/tools.jar:/home/rfy/development/inxmail/installa
> >tion/070815/inxmail-3.5-server/tomcat/bin/bootstrap.jar:/home/rfy/deve
> >lopment/inxmail/installation/070815/inxmail-3.5-server/tomcat/bin/comm
> >ons-logging-api.jar:/opt/jdk1.6.0/jre/lib/ext/sunjce_provider.jar:/opt
> >/jdk1.6.0/jre/lib/ext/sunpkcs11.jar:/opt/jdk1.6.0/jre/lib/ext/dnsns.ja
> >r:/opt/jdk1.6.0/jre/lib/ext/localedata.jar
> >
> > cp=/opt/java/lib/tools.jar:/home/rfy/development/inxmail/installation
> >/070815/inxmail-3.5-server/tomcat/bin/bootstrap.jar:/home/rfy/developm
> >ent/inxmail/installation/070815/inxmail-3.5-server/tomcat/bin/commons-
> >logging-api.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/webapps/inxadm/WEB-INF/lib/inxmail_admin.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/webapps/inxadm/WEB-INF/lib/log4j.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/work/Catalina/localhost/inxadm
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/webapps/inxadm/WEB-INF/lib/inxmail_admin.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/webapps/inxadm/WEB-INF/lib/log4j.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/catalina-ant.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/catalina-cluster.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/catalina-i18n-es.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/catalina-i18n-fr.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/catalina-i18n-ja.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/catalina-optional.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/catalina.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/commons-beanutils.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/commons-digester.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/commons-fileupload-1.0.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/commons-modeler.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/inxmailerror.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/jakarta-regexp-1.3.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/jkconfig.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/jkshm.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/servlets-common.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/servlets-default.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/servlets-invoker.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/servlets-webdav.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/tomcat-coyote.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/tomcat-http11.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/tomcat-jk.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/tomcat-jk2.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/tomcat-jni.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/server/lib/tomcat-util.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/classes
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/endorsed/xercesImpl.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/endorsed/xmlParserAPIs.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/lib/ant.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/lib/commons-collections.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/lib/commons-dbcp-1.1.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/lib/commons-el.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/lib/commons-pool-1.1.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/lib/jasper-compiler.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/lib/jasper-runtime.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/lib/jsp-api.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/lib/naming-common.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/lib/naming-factory.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/lib/naming-java.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/lib/naming-resources.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/common/lib/servlet-api.jar cp=/opt/jdk1.6.0/lib/tools.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/bin/bootstrap.jar
> >
> > cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-serv
> >er/tomcat/bin/commons-logging-api.jar
> > cp=/opt/jdk1.6.0/jre/lib/ext/sunjce_provider.jar
> >     cp=/opt/jdk1.6.0/jre/lib/ext/sunpkcs11.jar
> >     cp=/opt/jdk1.6.0/jre/lib/ext/dnsns.jar
> >     cp=/opt/jdk1.6.0/jre/lib/ext/localedata.jar
> >     work
> > dir=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-ser
> >ver/tomcat/work/Catalina/localhost/inxadm extension
> > dir=/opt/jdk1.6.0/jre/lib/ext:/usr/java/packages/lib/ext
> >
> > srcDir=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-
> >server/tomcat/work/Catalina/localhost/inxadm
> > include=org/apache/jsp/index_jsp.java
> >
> > 15.08.2007 12:50:39 org.apache.jasper.compiler.Compiler generateClass
> > SEVERE: Error compiling
> > file:
> > /home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/
> >tomcat/work/Catalina/localhost/inxadm//org/apache/jsp/index_jsp.java
> > [javac] Compiling 1 source file
> >
> > /home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/
> >tomcat/work/Catalina/localhost/inxadm/org/apache/jsp/index_jsp.java:20
> >: package com.inxmail.util does not exist
> > import com.inxmail.util.StringUtils;
> >                        ^
> > /home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/
> >tomcat/work/Catalina/localhost/inxadm/org/apache/jsp/index_jsp.java:15
> >9: cannot find symbol
> > symbol  : variable StringUtils
> > location: class org.apache.jsp.index_jsp
> >                                 entry.setValue(
> > StringUtils.replaceAll( ( String )entry.getValue(),
> > "$$INXMAIL_DIR$$",
> >                                                 ^



-- 

SOFTWARE DEVELOPMENT

------------------------------------------------------

Inxmail GmbH
Kaiser-Joseph-Str. 274, 79098 Freiburg, Germany

Tel: +49 (0)761 29 69 79-0
Fax: +49 (0)761 29 69 79-9
Web: http://www.inxmail.de

Handelsregister Freiburg, HRB 5870
USt-Id DE198371679
Geschäftsleitung Martin Bucher, Peter Ziras 

------------------------------------------------------

Inxmail Professional 3.5
Jetzt kostenlosen Testzugang anfordern:
http://www.inxmail.de/de/produkte-leistungen/unverbindlich-testen.php

******************

Tipps und Tricks für erfolgreiches E-Mail-Marketing erhalten Sie 
in unserem Newsletter. Gleich anmelden:
http://www.inxmail.de/de/aktuelles/newsletter-anmeldeformular.php

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: JSP compile error - required library in tomcat/shared/lib

Posted by David Delbecq <de...@oma.be>.
As you guessed would be intuitive, yes, the JSP compiler include classes
in shared/lib (and also classes in webapp itself).
The shared/lib is the same as if you copy it's content to the
WEB-INF/lib folder. As your compiler does not include the shared/lib in
it's classpath, there can be various reason

1) You did not copy your jar to shared/lib. Considering the path of your
tomcat, it's not unreasonnable to think be you copied it to another to
tomcat :)
2) You did copy, but after startup of tomcat. Restart tomcat.
3) Your jar is broken (not ending with .jar, corrupted) and classloader
ignored it. Sun JAR classloader, from my experience, tend to load what
is availabe from truncated .jar without warning of truncation. As a
consequence only half of jar content is used.
4) You use a non tomcat provided webappClassloader that forgets to load
shared/lib. If that's the case, you are probably already aware of that
fact :)
5) A Cosmic ray did randomly swap a bit in your memory. That's how
experts explained an incorrect pooling result with electronic voting
device a few years ago in Belgium :D.

En l'instant précis du 16/08/07 09:44, Rainer Frey s'exprimait en ces
termes:
> Hi all,
>
> after moving a jar file from tomcat/common/lib to tomcat/shared/lib, JSPs
> that use that library don't compile anymore, it says package does not
> exist. It is a library from my company, used by all webapps in the server
> installation. It used to be in tomcat/common/lib as it was used by a 
> tomcat
> valve that exists no longer. As it now needs other libraries in
> tomcat/shared/lib, we want to move it.
>
> Now, the classloader howto says:
>
>   
>> Common - This class loader contains additional classes that are made
>> visible
>> to both Tomcat internal classes and to all web applications. Normally,
>> application classes should NOT be placed here.
>>
>> Shared - This class loader is the place to put classes and resources
>> that you wish to share across ALL web applications (unless Tomcat
>> internal classes also need access, in which case you should put them in
>> the Common class loader instead)
>>     
>
> This library is only used in our application code, mostly in servlets, but
> also in some JSP, which can use it after being compiled. Only compiling
> doesn't work. Logically, this is thus no code that tomcat internal classes
> need.
>
> One can argue, however, that the JSP compiler is a tomcat internal class,
> and that using a library as compile class path means that this internal
> class needs it, and it thus needs to be in tomcat/common/lib.
>
> For me, this is not intuive, though, and I couldn't find any explicit
> documentation about it. My question is now:
> Must all libraries that contain classes used in JSPs be in 
> tomcat/common/lib
> (or WEB-INF/lib), or is this a bug in tomcat, or is this an error in our
> installation/configuration?
>
> Thanks,
> Rainer Frey
>
> P.S.:Here is the stack trace, showing no tomcat/shared/lib/anything in
> classpath:
>
> SEVERE: Javac exception
> Compile failed; see the compiler error output for details.
>         at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:944)
>         at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:764)
>         at
> org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:373)
>         at org.apache.jasper.compiler.Compiler.compile(Compiler.java:441)
>         at org.apache.jasper.compiler.Compiler.compile(Compiler.java:422)
>         at
> org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:507)
>         at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:274)
>         at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
>         at 
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
>         at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
>         at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
>         at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
>         at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
>         at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
>         at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>         at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540)
>         at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
>         at
> org.apache.catalina.valves.RequestFilterValve.process(RequestFilterValve.java:287)
>         at
> org.apache.catalina.valves.RemoteAddrValve.invoke(RemoteAddrValve.java:84)
>         at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
>         at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>         at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
>         at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
>         at
> org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:417)
>         at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>         at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
>         at
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
>         at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:793)
>         at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:702)
>         at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:571)
>         at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:644)
>         at java.lang.Thread.run(Thread.java:619)
> 15.08.2007 12:50:39 org.apache.jasper.compiler.Compiler generateClass
> SEVERE: Env: Compile:
> javaFileName=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm//org/apache/jsp/index_jsp.java
>    
> classpath=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/inxmail_admin.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/log4j.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/inxmail_admin.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/log4j.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-ant.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-cluster.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-i18n-es.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-i18n-fr.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-i18n-ja.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-optional.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-beanutils.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-digester.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-fileupload-1.0.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-modeler.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/inxmailerror.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/jakarta-regexp-1.3.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/jkconf
> i
> g.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/jkshm.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-common.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-default.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-invoker.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-webdav.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-coyote.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-http11.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-jk.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-jk2.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-jni.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-util.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/classes/:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/endorsed/xercesImpl.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/endorsed/xmlParserAPIs.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/ant.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-collections.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-dbcp-1.1.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-el.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-pool-1.1.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-s
> e
> rver/tomcat/common/lib/jasper-compiler.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/jasper-runtime.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/jsp-api.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-common.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-factory.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-java.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-resources.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/servlet-api.jar:/opt/jdk1.6.0/lib/tools.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/bin/bootstrap.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/bin/commons-logging-api.jar:/opt/jdk1.6.0/jre/lib/ext/sunjce_provider.jar:/opt/jdk1.6.0/jre/lib/ext/sunpkcs11.jar:/opt/jdk1.6.0/jre/lib/ext/dnsns.jar:/opt/jdk1.6.0/jre/lib/ext/localedata.jar
>    
> cp=/opt/java/lib/tools.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/bin/bootstrap.jar:/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/bin/commons-logging-api.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/inxmail_admin.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/log4j.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/inxmail_admin.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/webapps/inxadm/WEB-INF/lib/log4j.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-ant.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-cluster.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-i18n-es.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-i18n-fr.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-i18n-ja.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina-optional.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/catalina.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-beanutils.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-digester.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-fileupload-1.0.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/commons-modeler.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/inxmailerror.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/jakarta-regexp-1.3.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/jkconfig.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/jkshm.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-common.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-default.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-invoker.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/servlets-webdav.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-coyote.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-http11.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-jk.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-jk2.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-jni.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/server/lib/tomcat-util.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/classes
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/endorsed/xercesImpl.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/endorsed/xmlParserAPIs.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/ant.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-collections.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-dbcp-1.1.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-el.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/commons-pool-1.1.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/jasper-compiler.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/jasper-runtime.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/jsp-api.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-common.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-factory.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-java.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/naming-resources.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/common/lib/servlet-api.jar
>     cp=/opt/jdk1.6.0/lib/tools.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/bin/bootstrap.jar
>    
> cp=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/bin/commons-logging-api.jar
>     cp=/opt/jdk1.6.0/jre/lib/ext/sunjce_provider.jar
>     cp=/opt/jdk1.6.0/jre/lib/ext/sunpkcs11.jar
>     cp=/opt/jdk1.6.0/jre/lib/ext/dnsns.jar
>     cp=/opt/jdk1.6.0/jre/lib/ext/localedata.jar
>     work
> dir=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm
>     extension dir=/opt/jdk1.6.0/jre/lib/ext:/usr/java/packages/lib/ext
>    
> srcDir=/home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm
>     include=org/apache/jsp/index_jsp.java
>
> 15.08.2007 12:50:39 org.apache.jasper.compiler.Compiler generateClass
> SEVERE: Error compiling
> file: /home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm//org/apache/jsp/index_jsp.java    
> [javac] Compiling 1 source file
>
> /home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm/org/apache/jsp/index_jsp.java:20:
> package com.inxmail.util does not exist
> import com.inxmail.util.StringUtils;
>                        ^
> /home/rfy/development/inxmail/installation/070815/inxmail-3.5-server/tomcat/work/Catalina/localhost/inxadm/org/apache/jsp/index_jsp.java:159:
> cannot find symbol
> symbol  : variable StringUtils
> location: class org.apache.jsp.index_jsp
>                                 entry.setValue( StringUtils.replaceAll( (
> String )entry.getValue(), "$$INXMAIL_DIR$$",
>                                                 ^
>   


-- 
http://www.noooxml.org/



---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org