简体   繁体   English

Google App Engine开发服务器给出错误500(IntelliJ IDEA)

[英]Google App Engine Dev Server Gives Error 500 (IntelliJ IDEA)

I've just done a clean install of: 我刚刚完成了以下内容的全新安装:

  • IntelliJ IDEA 2016.2.4 IntelliJ IDEA 2016.2.4
  • Google App Engine Java SDK 1.9.42 Google App Engine Java SDK 1.9.42
  • Java JDK 1.8.0_102 Java JDK 1.8.0_102

I have just created a new Java Web Application in IntelliJ That I will be running on my localhost (using the AppEngine Dev Server 1.9.42, this server is included in the App Engine SDK). 我刚刚在IntelliJ中创建了一个新的Java Web应用程序,它将在我的本地主机上运行(使用AppEngine Dev Server 1.9.42,该服务器包含在App Engine SDK中)。

My project is brand new. 我的项目是全新的。

It auto-generated an index.jsp for me: 它为我自动生成了一个index.jsp:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
  <html>
    <head>
      <title>$Title$</title>
    </head>
    <body>
      $END$
    </body>
  </html>

A default web.xml: 默认的web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
</web-app>

And a standard appengine-web.xml: 还有一个标准的appengine-web.xml:

<?xml version="1.0" encoding="utf-8"?>
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
  <application></application>
  <version>1</version>
  <threadsafe>true</threadsafe>
</appengine-web-app>

I think that's all OK, but when I try to run this example. 我认为一切都很好,但是当我尝试运行此示例时。 I get an ERROR 500... (This looks like crap...I know) 我收到错误500 ...(看起来像废话...我知道)

HTTP ERROR 500 HTTP错误500

Problem accessing /. 问题访问/。 Reason: 原因:

 Unable to load class for JSP Caused by: 

org.apache.jasper.JasperException: Unable to load class for JSP at org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:630) at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) at com.google.appengine.tools.development.PrivilegedJspServlet.access$101(PrivilegedJspServlet.java:23) at com.google.appengine.tools.development.PrivilegedJspServlet$2.run(PrivilegedJspServlet.java:61) at java.security.AccessController.doPrivileged(Native Method) at com.google.appengine.tools.development.PrivilegedJspServlet.service(PrivilegedJspServlet.java:58) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) at org.mortbay.jetty.servlet.ServletHa org.apache.jasper.JasperException: 无法在org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144)的org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:630)处加载JSP类在org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)在org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)在org.apache.jasper.servlet.JspServlet.service (JspServlet.java:260)在com.google.appengine.tools.development.PrivilegedJspServlet.access $ 101(PrivilegedJspServlet.java:23)在com.google.appengine.tools.development.PrivilegedJspServlet $ 2.run(PrivilegedJspServlet.java:61) )上com.google.appengine.tools.development.PrivilegedJspServlet.service(PrivilegedJspServlet.java:58)上java.security.AccessController.doPrivileged(本机方法)上的javax.servlet.http.HttpServlet.service(HttpServlet.java:717) ),位于org.mortbay.jetty.servlet.ServletHa上的org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) ndler$CachedChain.doFilter(ServletHandler.java:1166) at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366) at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349) at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) at org. org.mortbay.jetty.Servlet.ServletHandler $ CachedChain.doFilter()上com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63)上的ndler $ CachedChain.doFilter(ServletHandler.java:1166) com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366)的com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349)上的ServletHandler.java:1157) org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)上的.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116)在org.mortbay.jetty.servlet.ServletHandler org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)的org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)的.handle(ServletHandler.java:388)组织中的mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)。 mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) at com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:98) at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:327) at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126) at com.google.appengine.tools.development.StaticFileUtils.serveWelcomeFileAsForward(StaticFileUtils.java:84) at com.google.appengine.tools.development.LocalResourceFileServlet.maybeServeWelcomeFile(LocalResourceFileServlet.java:260) at com.google.appengine.tools.development.LocalResourceFileServlet.doGet(LocalResourceFileServlet.java:120) at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166) at com.google.appengine.api.socket.dev.DevSocketFilt org.mortbay.jetty.servlet.Dispatcher.forward上com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:98)上的mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)的com.google.appengine.tools.development.StaticFileUtils.serveWelcomeFileAsForward(StaticFileUtils.java:84)的org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)的com.google com.google.appengine.tools.development.LocalResourceFileServlet.doGet(LocalResourceFileServlet.java:120)上的.appengine.tools.development.LocalResourceFileServlet.maybeServeWelcomeFile(LocalResourceFileServlet.java:260)在javax.servlet.http.HttpServlet.service(HttpServlet) .java:617)(位于org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511),位于org.mortbay.jetty.servlet处的javax.servlet.http.HttpServlet.service(HttpServlet.java:717)。 com.google.appengine.api.socket.dev.DevSocketFilt上的ServletHandler $ CachedChain.doFilter(ServletHandler.java:1166) er.doFilter(DevSocketFilter.java:74) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:128) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:50) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:12 org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)上的er.doFilter(DevSocketFilter.java:74),com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java: 128)在org.mortbay.jetty的org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)在com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34) org.mortbay.jetty.servlet.ServletHandler $ CachedChain上的com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63)上的.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157) com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:50)上的.doFilter(ServletHandler.java:1157)org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157) ),网址为com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:12 5) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366) at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349) at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) at com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(D 5)位于com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366)的org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157) org.mortbay.jetty.servlet.ServletHandler $ CachedChain.do上的.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349)位于com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116) (ServletHandler.java:1157),位于org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388),位于org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216),位于org.mortbay。在org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)的jetty.servlet.SessionHandler.handle(SessionHandler.java:182)在org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java: 418),网址为com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(D evAppEngineWebAppContext.java:98) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:511) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:326) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582) Caused by: java.lang.ClassNotFoundException: org.apache.jsp.index_jsp at java.net.URLClassLoader.findClass(URLClassLo org上org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)上的evAppEngineWebAppContext.java:98)com.google.appengine.tools.development.JettyContainerService $ ApiProxyHandler.handle(JettyContainerService.java:511)上的org.mortbay.jetty.handler.HandlerWrapper.handle org.mortbay.jetty.Server.handle(Server.java:326)上的.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)在org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542上) ),位于org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)的org.mortbay.jetty.HttpConnection $ RequestHandler.headerComplete(HttpConnection.java:923),位于org.mortbay.jetty.HttpParser.parseAvailable(HttpParser。的org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)的org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)的org.mortbay.thread.QueuedThreadPool $ PoolThread的java:212) .run(QueuedThreadPool.java:582)原因:java.lang.ClassNotFoundException:org.apache.jsp.index_jsp在java.net.URLClassLoader.findClass(URLClassLo ader.java:381) at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134) at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66) at org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:628) ... 65 more Caused by: org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134)处的ader.java:381)org.apache.jasper处org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66)处的ader.java:381) .JspCompilationContext.load(JspCompilationContext.java:628)... 65个以上原因:

java.lang.ClassNotFoundException: org.apache.jsp.index_jsp at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134) at org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66) at org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:628) at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) at com.google.appengine.tools.development.PrivilegedJspServlet.access$101(PrivilegedJspServlet.java:23) at com.google.appengine.tools.development.PrivilegedJspServlet$2.run(PrivilegedJspServlet.java:61) at java.security.AccessController.doPrivileged(Native Method) at com.google.appengine.tools.development.PrivilegedJspServlet.service( java.lang.ClassNotFoundException: org.org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:134)上的java.net.URLClassLoader.findClass(URLClassLoader.java:381)上的org.apache.jsp.index_jsp org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java)上的org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:628)上的apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66): 144)在org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)在org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)在org.apache.jasper.servlet.JspServlet com.google.appengine.tools.development.PrivilegedJspServlet.access $ 101(PrivilegedJspServlet.java:23)的.service(JspServlet.java:260)com.google.appengine.tools.development.PrivilegedJspServlet $ 2.run(PrivilegedJspServlet.java) :61),位于com.google.appengine.tools.development.PrivilegedJspServlet.service(java.security.AccessController.doPrivileged(本机方法)处) PrivilegedJspServlet.java:58) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166) at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366) at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349) at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388) at org.mortbay.jetty.security.Se org.mortbay.jetty.servlet.javax.servlet.http.HttpServlet.service(HttpServlet.java:717)处的PrivilegedJspServlet.java:58)org.mortbay.jetty.servlet处的org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63)上的.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1166)在org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter上(ServletHandler.java:1157)com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366)com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349) com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116)在org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)在org.mortbay.jetty.servlet。 org.mortbay.jetty.security.Se上的ServletHandler.handle(ServletHandler.java:388) curityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) at com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:98) at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:327) at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126) at com.google.appengine.tools.development.StaticFileUtils.serveWelcomeFileAsForward(StaticFileUtils.java:84) at com.google.appengine.tools.development.LocalResourceFileServlet.maybeServeWelcomeFile(LocalResourceFileServlet.java:260) at com.google.appengine.tools.development.LocalResourceFileServlet.doGet(LocalResourceFileServlet.java:120) at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.mort org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)的curityHandler.handle(SecurityHandler.java:216)org.org的org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)的curityHandler.handle(ContextHandler.java:765)位于org.mortbay.jetty.servlet.Dispatcher.forward的com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:98)的.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) (com.google.appengine.tools.development.StaticFileUtils.serveWelcomeFileAsForward(StaticFileUtils.java:84)上的org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)上的(Dispatcher.java:327)。 google.appengine.tools.develops.LocalResourceFileServlet.maybeServeWelcomeFile(LocalResourceFileServlet.java:260)位于com.google.appengine.tools.development.LocalResourceFileServlet.doGet(LocalResourceFileServlet.java:120)位于javax.servlet.http.HttpServlet.service( org.mort上的javax.servlet.http.HttpServlet.service(HttpServlet.java:717)上的HttpServlet.java:617) bay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166) at com.google.appengine.api.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.java:74) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:128) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(Transaction org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1166)上的bay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)在com.google.appengine.api.socket.dev上。 org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)上的DevSocketFilter.doFilter(DevSocketFilter.java:74)在com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java: 128)在org.mortbay.jetty的org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)在com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34) org.mortbay.jetty.servlet.ServletHandler $ CachedChain上的com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63)上的.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157) com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(Transaction)上的.doFilter(ServletHandler.java:1157) CleanupFilter.java:50) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:125) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366) at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349) at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) at org.mortbay.jett org.org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)的com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:125)的CleanupFilter.java:50) com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366)上的.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)在com.google.appengine.tools.development上org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java)上的com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116)上的.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349) :1157)位于org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388),位于org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216),位于org.mortbay.jetty.servlet。 org.mortbay.jett上的SessionHandler.handle(SessionHandler.java:182) y.handler.ContextHandler.handle(ContextHandler.java:765) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) at com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:98) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:511) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:326) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.ja org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)上的y.handler.ContextHandler.handle(ContextHandler.java:765)在com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext。 org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)上com.google.appengine.tools.development.JettyContainerService $ ApiProxyHandler.handle(JettyContainerService.java:511)上的java.98) org.mortbay.jetty.Server.handle(Server.java:326)的org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)的.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)上的org.mortbay.jetty.HttpConnection $ RequestHandler.headerComplete(HttpConnection.java:923)在org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java: 212),位于org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.ja)上的org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) va:409) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582) va:409)在org.mortbay.thread.QueuedThreadPool $ PoolThread.run(QueuedThreadPool.java:582)

This is my project structure/layout: 这是我的项目结构/布局:

项目结构

Does anybody with some more experience know what I could've done wrong? 有更多经验的人知道我做错了什么吗? If you need any further info, I'll happy to give it. 如果您需要任何其他信息,我们将很乐意提供。

Thanks in Advance. 提前致谢。

Tristan 特里斯坦

App engine standard environment runs servlet spec 2.5 under Java 1.7 App Engine标准环境在Java 1.7下运行servlet spec 2.5

You'll need to change: 您需要更改:

  • web.xml to use the correct syntax for 2.5 web.xml使用2.5的正确语法
  • your jsp to use the correct syntax for jstl under 2.5 and 您的jsp对2.5以下的jstl使用正确的语法,并且
  • make sure it runs under 1.7 确保它在1.7以下运行

I'd start with installing the 1.7 sdk then if everything is ok try putting it back to 1.8 sdk running for compatibility for 1.7 There are some versions of 1.8 that break jsp compilation when running under 1.7 我将从安装1.7 sdk开始,然后,如果一切正常,请尝试将其恢复回1.8 sdk,以实现1.7的兼容性。在1.7之下运行时,某些1.8版本会破坏jsp编译

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM