4

我正在研究基于表单的身份验证并使用以下语句。我在实现的过程中意识到 HttpServletRequest->login 方法是 servlet 3.0 附带的。(在stackoverflow用户的帮助下)

HttpServletRequest request = getHttpServletRequest();
request.login() 

所以我使用 weblogic 作为 AppServer,我准备了一个没有任何编译错误的 war 文件,它适用于 glassfish 3.1 appserver。但由于 weblogic 10.3 具有隐式支持 2.5,它会覆盖 Servlet 3.0.1.jar,因此会出现以下错误。

java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.login(Ljava/lang/String;Ljava/lang/String;)V

如何在 weblogic 10.3 上使用 servlet 3.0 api 运行我的 war 文件,换句话说,如何停止 weblogic 覆盖 servlet 3.0 api?

4

1 回答 1

18

Weblogic 10.3.x是一个Servlet 2.5容器。你必须使用Weblogic 12c及以上版本。它提供对Servlet 3.0的支持

于 2013-06-21T07:52:34.580 回答