ServletRequest NoSuchMethodError

时间:2013-02-19 23:32:21

标签: java jetty

我的环境码头8.1

public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
  //this line prints org.eclipse.jetty.server.Request
  System.out.println("class is "+request.getClass().getName());

  org.eclipse.jetty.server.Request jettyRequest = (org.eclipse.jetty.server.Request)request;
  //request.getServletContext();//this line fails with noSuchMethodError
  jettyRequest.getServletContext(); // this line works

  ...

任何人都可以解释这个......?

1 个答案:

答案 0 :(得分:2)

您的webapp未使用Servlet API 3.0。

如果您使用的是Servlet API 2.5(例如),则会失败。

确保为Servlet API 3.0设置了webapp的WEB-INF/web.xml,并确保删除了WEB-INF/lib中可能包含的任何servlet-api jar。