错误原因:jetty 的版本和servlet—api版本不同,加载时的顺序不同,先加载servlet-api,而造成的错误。
解决方案:
1、如果是使用的是maven的话,在pom文件中,将jetty的jar包的依赖放在servlet-api的依赖前面
2、如果没有使用maven的话,可以在java build bath->order and export 将jetty的包上移
完整报错日志:
2014-09-15 01:49:15.572:WARN:oejs.ServletHandler:qtp968838231-22: Error for /myapp/index.jsp
java.lang.NoSuchMethodError: javax.servlet.ServletContext.getJspConfigDescriptor()Ljavax/servlet/descriptor/JspConfigDescriptor;
at org.apache.jasper.compiler.JspConfig.processWebDotXml(JspConfig.java:106)
at org.apache.jasper.compiler.JspConfig.init(JspConfig.java:196)
at org.apache.jasper.compiler.JspConfig.findJspProperty(JspConfig.java:259)
at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:166)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:625)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
at org.apache.jasper.servlet.JspServlet.serviceJ