【问题标题】:error 500 on google app engine谷歌应用引擎上的错误 500
【发布时间】:2026-01-07 09:30:01
【问题描述】:

我正在尝试在 Google App Engine 上创建一个 servlet。过去我已经成功完成了几次,但现在从云端运行时出现“内部服务器错误”。

不过,它可以在开发模式下的 Eclipse 上运行。

我的 servlet 叫做 AsyncServer,代码是:

public class AsyncServer extends HttpServlet {
static final long serialVersionUID=0L;

  @Override
  protected void doGet(HttpServletRequest req, HttpServletResponse resp)
      throws ServletException, IOException {
      resp.setContentType("text/plain");
      PrintWriter writer = resp.getWriter();
      writer.write("Hello");
      writer.flush();
      writer.close();
}

  @Override
  protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {}

}

我在本地开发服务器上使用如下地址调用:

http://127.0.0.1:8888/test4/AsyncServer

正如预期的那样,我得到了“你好”。

部署到 ID 为 fa100-1130 下的 Google 服务器时 我使用以下地址

http://fa100-1130.appspot.com/test4/AsyncServer

我收到一个 http 错误 500

【问题讨论】:

  • 日志显示什么?您可以在 Google Developers Console 上查看它们——console.developers.google.com
  • 谢谢,可能是这样。日志有几个这样的错误:
  • servlet java.lang.UnsupportedClassVersionError: com/tests/test4/server/AsyncServer : Unsupported major.minor version 52.0 - 这是什么?
  • 求解器感谢 Alex Martelli。我使用的是 Java 1.8 版并将其降级为 1.7 版,一切正常。
  • 总是乐于提供帮助——请记住以后总是查看日志并将它们包含在问题中!-) 现在,如果您可以发布您的解决方案作为答案并最终接受它,那将是太好了,将 Q 标记为由 * 的规则解决...!

标签: java google-app-engine servlets


【解决方案1】:

当前输入您问题中提到的 URL 并返回肯定的响应: http://fa100-1130.appspot.com/test4/AsyncServer

运行开发并再次执行部署

再见 :) @localien

【讨论】:

  • 它已经按照 Alex Martelli 的阅读日志的建议进行了修复。按照日志“不支持的版本”的建议,我从 java 1.8 降级到 1.7。从其他帖子了解到,云端GAE上的一些功能可能与最新版本的java不兼容。