[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[jetty-users] jsp re-compilation problem on jetty 8.1.3

On a production environment with jetty-distribution-8.1.3.v20120416 and the following configuration

  <init-param>
      <param-name>fork</param-name>
      <param-value>false</param-value>
    </init-param>
   <init-param>
      <param-name>development</param-name>
      <param-value>false</param-value>
    </init-param>
     <init-param>
      <param-name>
checkInterval</param-name>
      <param-value>120</param-value>
    </init-param>
    <init-param>
         <param-name>keepgenerated</param-name>
         <param-value>true</param-value>
     </init-param>

When the client hits the first time a jsp with a compile error (a method that does not exist) on the error log is displayed the following error:

SEVERE: Error compiling file: /tmp/jetty-127.0.0.1-1094-WebContent-_-www.mysite.it-/jsp/org/apache/jsp/contenuti_jsp.java
2012-07-09 16:31:34.357:WARN:/:PWC6356: Background compilation failed.
org.apache.jasper.JasperException: PWC6033: Error in Javac compilation for JSP||PWC6197: An error occurred at line: 14 in the jsp file: /contenuti.jsp|PWC6199: Generated servlet error:|string:///contenuti_jsp.java:62: includeHeader(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,javax.servlet.jsp.JspWriter) in it.sodomaco.turcom.AppConf cannot be applied to (javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)||PWC6197: An error occurred at line: 29 in the jsp file: /contenuti.jsp|PWC6199: Generated servlet error:|string:///contenuti_jsp.java:78: includeFooter(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,javax.servlet.jsp.JspWriter) in it.sodomaco.turcom.AppConf cannot be applied to (javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)||
        at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:129)
        at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:299)
        at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:392)
        at org.apache.jasper.compiler.Compiler.compile(Compiler.java:453)
        at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:625)
        at org.apache.jasper.compiler.JspRuntimeContext.checkCompile(JspRuntimeContext.java:470)
        at org.apache.jasper.compiler.JspRuntimeContext.run(JspRuntimeContext.java:699)
        at java.lang.Thread.run(Thread.java:619)
Jul 9, 2012 4:33:34 PM org.apache.jasper.compiler.Compiler generateClass

No problem till now.
Also if this jsp is never requested again, the error is displayed again in the stderr every 2 minitus (I think this is related to checkInterval parameter).
I think this is a bug and the Jsp should not be recompiled if it is not request again.
The second think is that if a remove the jsp file jetty still tries to compile the jsp every to minutes but the error change to

2012-07-10 15:20:07.478:WARN:/:PWC6356: Background compilation failed.
org.apache.jasper.JasperException: PWC6117: File "/contenuti.jsp" not found
    at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:92)
    at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:378)
    at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:172)
    at org.apache.jasper.compiler.JspUtil.getInputStream(JspUtil.java:917)
    at org.apache.jasper.xmlparser.XMLEncodingDetector.getEncoding(XMLEncodingDetector.java:145)
    at org.apache.jasper.compiler.ParserController.determineSyntaxAndEncoding(ParserController.java:381)
    at org.apache.jasper.compiler.ParserController.doParse(ParserController.java:215)
    at org.apache.jasper.compiler.ParserController.parse(ParserController.java:145)
    at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:212)
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
    at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:625)
    at org.apache.jasper.compiler.JspRuntimeContext.checkCompile(JspRuntimeContext.java:470)
    at org.apache.jasper.compiler.JspRuntimeContext.run(JspRuntimeContext.java:699)
    at java.lang.Thread.run(Thread.java:619)

The only way to interrupt this process is to restart jetty or replace the jsp with a working one.

 Am I missing anything or is this a bug?
thank you in advance
Andrea