2010-01-26 54 views
0

我一直在試圖讓tomcat 6.0在我的本地機器上工作並且一直不成功。服務器正常啓動,但是當我嘗試查看網頁我得到一個異常:Tomcat 6.0 Jasper異常

SEVERE: Servlet.service() for servlet jsp threw exception 
org.apache.jasper.JasperException: Unable to compile class for JSP: 

An error occurred at line: 22 in the generated java file 
The method getJspApplicationContext(ServletContext) is undefined for the type JspFactory 

Stacktrace: 
    at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92) 
    at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) 
    at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:439) 
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:334) 
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:312) 
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:299) 
    ....... 

public void _jspInit() { 
    _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory(); 
    _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName()); 
} 
+0

需要更多信息 - 引發此異常的頁面。 去工作/ Catalina /..../ filename_jsp.java,看看在線22 – Bozho 2010-01-26 20:58:26

回答

3

檢查你的web應用程序的庫不包含任何事情Tomcat提供。特別要注意JSP和JSP-EL庫。

這個問題讓我想起了常春藤自動導入Spring JSP庫和Tomcat真的不喜歡的servlet庫。例如,

+0

我注意到,servlet-api和jsp-api被添加。你認爲這可能是問題嗎?我將它們作爲範圍=在maven中提供,但它們也位於tomcat/lib目錄中。 – partkyle 2010-01-26 22:14:57

+1

刪除它們。在maven中使用不同的作用域。從內存中,如果您使用的是spring 3,則使用編譯範圍。 – Sarge 2010-01-26 22:53:23

+0

我改變了他們的範圍,並且在命令行maven中一切正常。當我嘗試使用m2eclipse插件時碰到相同的問題,儘管 – partkyle 2010-01-27 00:48:25