0

在使用 GAE SDK 1.9.3 和 Java 7 在 Eclipse Kepler (Windows 7) 上运行基本 servlet 时出现以下错误:

java.lang.NoClassDefFoundError: javax.servlet.http.HttpServlet is a restricted class.
Please see the Google App Engine developer's guide for more details.

重现:

  1. 安装 Java 7 SDK
  2. 安装开普勒
  3. 安装 GAE Eclipse 插件
  4. 创建一个 GAE Web 项目
  5. 实现基本 servlet 的 init 方法并设置load-on-startup1inweb.xml
  6. 然后运行 ​​Web 应用程序

我在 2 台机器上尝试过,我得到了同样的错误。

4

2 回答 2

0

好吧,我发现了问题所在,这是我的错误。对不起。当我安装 Java 7 时,我为 JDK 和 JRE 指定了不同的目录,这很好,除了我两次给出了相同的位置并且文件混淆了。我的 GAE 问题是一个副作用。

于 2014-04-29T04:04:28.543 回答
0

通过扩展 HttpServlet 创建一个 servlet,然后在您的 servlet 中覆盖doPost()doGet()方法。例如:

public class FileServlet extends HttpServlet {

    @Override
    public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
          // do something
    }
于 2014-04-28T20:09:09.633 回答