You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Ra...@itdz-berlin.de on 2006/02/07 14:56:26 UTC

Why JasperException "Unable to compile"

Hi Tomcatters,

we run two Tomcats on two separate hosts which are assumed to be
configured exactly the same
(at least as far as Tomcat, Java env, and this webapp are
concerned).

I have no knwoledge of Tomcat webapps like JSPs and Jasper
whatsoever
(only administrating the server).

While when the same query path of the URI is called from a
client's browser against both hosts,
and the same piece of JSP should get executed there, it works
fine on one host
whereas on the other Tomcat host we get a Jasper exception.

Because of my lack of knowledge of Jasper I cannot find the
source of the error
where both Tomcat hosts could possibly deviate from one another.
If it was a legacy CGI program or script I would know how to help
myself.

Here is the exception pass stack trace through the Jasper classes
from the host where this particular request crashes,
taken from its Tomcat log.

Maybe any Java/Jasper knwoledgeable person can detect something
from it?

Maybe I could even raise the verbosity level (by somehow enabling
debug mode) of Tomcat?
Can this be done on a running Tomcat?
How could I raise the logging level to Debug,
maybe by passing the Java master thread some -D switch
definition?
But this would then require a Tomcat restart I suppose?

Since I even lack the most basics of JSP
(thought it was only some sort of templating/embedding of Java
code in ordinary XHTML)
I am not even familiar with when and how the Java source gets
compiled and thus could produce
the below Jasper exception (it simply suggests a wrong invocation
of the Java compiler, as it looks)
Wasn't it that servlets or JSP got only compiled the first time
they were executed by the servlet engine,
and thereafter remain resident in memory?

Excerpt from Tomcat log, where the Jasper exception is thrown:


  1343  2006-02-07 13:59:46 - Ctx(/OurTool) : Exception in R(
/OurTool + /someTrash/rotten.jsp + null) -
org.apache.jasper.JasperException: Unable to compile Usage:
jsp->javac <options> <source files>
  1344  
  1345  where <options> includes:
  1346    -g                     Generate all debugging info
  1347    -g:none                Generate no debugging info
  1348    -g:{lines,vars,source} Generate only some debugging
info
  1349    -O                     Optimize; may hinder debugging
or enlarge class files
  1350    -nowarn                Generate no warnings
  1351    -verbose               Output messages about what the
compiler is doing
  1352    -deprecation           Output source locations where
deprecated APIs are used
  1353    -classpath <path>      Specify where to find user class
files
  1354    -sourcepath <path>     Specify where to find input
source files
  1355    -bootclasspath <path>  Override location of bootstrap
class files
  1356    -extdirs <dirs>        Override location of installed
extensions
  1357    -d <directory>         Specify where to place generated
class files
  1358    -encoding <encoding>   Specify character encoding used
by source files
  1359    -target <release>      Generate class files for
specific VM version
  1360  
  1361          at
org.apache.tomcat.facade.JasperLiaison.javac(JspInterceptor.java:
898)
  1362          at
org.apache.tomcat.facade.JasperLiaison.processJspFile(JspIntercep
tor.java:733)
  1363          at
org.apache.tomcat.facade.JspInterceptor.requestMap(JspInterceptor
.java:506)
  1364          at
org.apache.tomcat.core.ContextManager.processRequest(ContextManag
er.java:968)
  1365          at
org.apache.tomcat.core.ContextManager.internalService(ContextMana
ger.java:875)
  1366          at
org.apache.tomcat.core.ContextManager.service(ContextManager.java
:833)
  1367          at
org.apache.tomcat.modules.server.Http10Interceptor.processConnect
ion(Http10Interceptor.java:176)
  1368          at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.
java:494)
  1369          at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(Thr
eadPool.java:516)
  1370          at java.lang.Thread.run(Thread.java:534)


Rgds
Ralph

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


Re: Why JasperException "Unable to compile"

Posted by Bill Barker <wb...@wilshire.com>.
>From the format of the error message, this is some version of Tomcat 3.3.x. 
To get more information, add the attribute debug="99" to the <JspInterceptor 
/> element in server.xml (and, of course, restart Tomcat :).

<Ra...@itdz-berlin.de> wrote in message 
news:D44BE377760A99459EE0C200622E13F608C705@itdzex001.ITDZ.verwalt-berlin.de...
Hi Tomcatters,

we run two Tomcats on two separate hosts which are assumed to be
configured exactly the same
(at least as far as Tomcat, Java env, and this webapp are
concerned).

I have no knwoledge of Tomcat webapps like JSPs and Jasper
whatsoever
(only administrating the server).

While when the same query path of the URI is called from a
client's browser against both hosts,
and the same piece of JSP should get executed there, it works
fine on one host
whereas on the other Tomcat host we get a Jasper exception.

Because of my lack of knowledge of Jasper I cannot find the
source of the error
where both Tomcat hosts could possibly deviate from one another.
If it was a legacy CGI program or script I would know how to help
myself.

Here is the exception pass stack trace through the Jasper classes
from the host where this particular request crashes,
taken from its Tomcat log.

Maybe any Java/Jasper knwoledgeable person can detect something
from it?

Maybe I could even raise the verbosity level (by somehow enabling
debug mode) of Tomcat?
Can this be done on a running Tomcat?
How could I raise the logging level to Debug,
maybe by passing the Java master thread some -D switch
definition?
But this would then require a Tomcat restart I suppose?

Since I even lack the most basics of JSP
(thought it was only some sort of templating/embedding of Java
code in ordinary XHTML)
I am not even familiar with when and how the Java source gets
compiled and thus could produce
the below Jasper exception (it simply suggests a wrong invocation
of the Java compiler, as it looks)
Wasn't it that servlets or JSP got only compiled the first time
they were executed by the servlet engine,
and thereafter remain resident in memory?

Excerpt from Tomcat log, where the Jasper exception is thrown:


  1343  2006-02-07 13:59:46 - Ctx(/OurTool) : Exception in R(
/OurTool + /someTrash/rotten.jsp + null) -
org.apache.jasper.JasperException: Unable to compile Usage:
jsp->javac <options> <source files>
  1344
  1345  where <options> includes:
  1346    -g                     Generate all debugging info
  1347    -g:none                Generate no debugging info
  1348    -g:{lines,vars,source} Generate only some debugging
info
  1349    -O                     Optimize; may hinder debugging
or enlarge class files
  1350    -nowarn                Generate no warnings
  1351    -verbose               Output messages about what the
compiler is doing
  1352    -deprecation           Output source locations where
deprecated APIs are used
  1353    -classpath <path>      Specify where to find user class
files
  1354    -sourcepath <path>     Specify where to find input
source files
  1355    -bootclasspath <path>  Override location of bootstrap
class files
  1356    -extdirs <dirs>        Override location of installed
extensions
  1357    -d <directory>         Specify where to place generated
class files
  1358    -encoding <encoding>   Specify character encoding used
by source files
  1359    -target <release>      Generate class files for
specific VM version
  1360
  1361          at
org.apache.tomcat.facade.JasperLiaison.javac(JspInterceptor.java:
898)
  1362          at
org.apache.tomcat.facade.JasperLiaison.processJspFile(JspIntercep
tor.java:733)
  1363          at
org.apache.tomcat.facade.JspInterceptor.requestMap(JspInterceptor
.java:506)
  1364          at
org.apache.tomcat.core.ContextManager.processRequest(ContextManag
er.java:968)
  1365          at
org.apache.tomcat.core.ContextManager.internalService(ContextMana
ger.java:875)
  1366          at
org.apache.tomcat.core.ContextManager.service(ContextManager.java
:833)
  1367          at
org.apache.tomcat.modules.server.Http10Interceptor.processConnect
ion(Http10Interceptor.java:176)
  1368          at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.
java:494)
  1369          at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(Thr
eadPool.java:516)
  1370          at java.lang.Thread.run(Thread.java:534)


Rgds
Ralph 




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