私はこの種の問題(this one)をアプリエンジンで持っています。IllegalStateExceptionを取得する:このようなサーブレットはありません:jspは、Google App EngineにデプロイされたJavaアプリケーションにアクセスするとき
私はちょうど始めて、ローカルホスト(tomcat-serverとAppエンジンの標準ローカルホスト)で少なくとも100回テストした後、Eclipseプラグインを使用してJavaエンジンをApp Engineにデプロイしようとしました。
しかし、私はApp Engineの標準としてそれを展開するとき、私はすべてのサーブレットにアクセスしようとしているとき、私はこのエラーを得た:
java.lang.IllegalStateException:いいえ、そのようなサーブレット:org.eclipseでJSP を.jetty.servlet.ServletHandler.updateMappings(ServletHandler.java:1535) at org.eclipse.jetty.servlet.ServletHandler.doStart(ServletHandler.java:157) at org.eclipse.jetty.util.component.AbstractLifeCycle.start (AbstractLifeCycle.java:68) at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131) at org.eclipse.jetty.util.component.Conta (AbstractHandler.java:61) at org.eclipse.jetty.security.SecurityHandler.doStart(SecurityHandler.java:SecurityHandler.java: (AbstractLifeCycle.java:68) at org.eclipse。 jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131) at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105) at org.eclipse.jetty.server.handler。 AbstractHandler.doStart(AbstractHandler.java:61) at org.eclipse.jetty.server.handler.ScopedHandler.doStart(ScopedH andler.java:120) at org.eclipse.jetty.server.session.SessionHandler.doStart(SessionHandler.java:116) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131) at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105) at org.eclipse。 (org.eclipse.jetty.server.handler.ScopedHandler.java:120) で、 ContextHandler.startContext(ContextHandler.java:809) at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:345)(WebAppContext.java:1406) at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1368) at org.eclipse.jetty.server。 (WebAppContext.java:WebAppContext.java:WebAppContext.java:)のWebアプリケーション・コンテキスト・ハンドラ.ContentHandler.doStart(ContextHandler.java:778) (org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:262) (AbstractLifeCycle.java:68) at com.google.apphosting.runtime.jetty9.AppVersionHandlerMap.createHandler(AppVersionHandlerMap.java:244) google.apphosting.runtime.jetty9.AppVersionHandlerMap.getHandler(AppVersionHandlerMap.java:182) at com.google。 apphosting.runtime.jetty9.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:97) (com.google.apphosting.runtime.JavaRuntime $ RequestRunnable.dispatchServletRequest(JavaRuntime.java:680) 、com.google.apphosting.runtime.JavaRuntime $) RequestRunnable.dispatchRequest(JavaRuntime。java:642) com.google.apphosting.runtime.JavaRuntime $ RequestRunnable.run(JavaRuntime.java:612) at com.google.apphosting.runtime.JavaRuntime $ NullSandboxRequestRunnable.run(JavaRuntime.java:806) at java.lang.Thread.runでcom.google.apphosting.runtime.ThreadGroupPool $ PoolEntry.run(ThreadGroupPool.java:274) (Thread.java:745)
私は他のファイルにアクセスすることができ、画像、* .html。
私はその重要ならば、私はアプリエンジンで私のweb.xmlファイルは私の*のすべてのためにサーブレットとserveltマッピング(私が考えるクラウドストレージへのマッピング)を加えることによって修正されていることに気づいたか分かりません.jspファイルではなく、localhostにはありません。
「この要求によってアプリケーションで新しいプロセスが開始され、アプリケーションコードが初めて読み込まれるようになりました。あなたのアプリケーションの典型的な要求 "と、私は試用アカウントにリンクされているかどうかわかりません。
私はdatanucleus(datanucleus-api-jdo-5.1.0-release)ライブラリを使用しています。私はweb.xmlにもいくつかのフィルタ、インデックスファイル、エラーページjspを持っています。
Eclipseプロジェクトファセット:
App Engineの標準envirement:JRE8
サーブレットAPI:2.5
JAVA:1.8
JPA:1.0私は本当に助けを必要と
、感謝します。
のappengine-web.xmlファイル:
<?xml version="1.0" encoding="UTF-8"?>
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
<threadsafe>true</threadsafe>
<sessions-enabled>true</sessions-enabled>
<runtime>java8</runtime>
</appengine-web-app>
web.xmlファイル:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:jsp="http://java.sun.com/xml/ns/javaee/jsp" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
<display-name>my_project</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!-- SERVLETS DEFs -->
<servlet>
<servlet-name>Welcome</servlet-name>
<servlet-class>my_root_package.servlets.controllers.Welcome</servlet-class>
</servlet>
<servlet>
<servlet-name>Statistic</servlet-name>
<servlet-class>my_root_package.servlets.controllers.Statistic</servlet-class>
</servlet>
<servlet>
<servlet-name>Genea_Tree</servlet-name>
<servlet-class>my_root_package.servlets.controllers.Genea_Tree</servlet-class>
</servlet>
<servlet>
<servlet-name>Genea_TreeEdit</servlet-name>
<servlet-class>my_root_package.servlets.controllers.Genea_TreeEdit</servlet-class>
</servlet>
<servlet>
<servlet-name>New_event</servlet-name>
<servlet-class>my_root_package.servlets.controllers.New_event</servlet-class>
</servlet>
<servlet>
<servlet-name>Inscription</servlet-name>
<servlet-class>my_root_package.servlets.controllers.Inscription</servlet-class>
</servlet>
<servlet>
<servlet-name>InscriptionStep1</servlet-name>
<servlet-class>my_root_package.servlets.controllers.InscriptionStep1</servlet-class>
</servlet>
<servlet>
<servlet-name>InscriptionStep2</servlet-name>
<servlet-class>my_root_package.servlets.controllers.InscriptionStep2</servlet-class>
</servlet>
<servlet>
<servlet-name>InscriptionConfirm</servlet-name>
<servlet-class>my_root_package.servlets.controllers.InscriptionConfirm</servlet-class>
</servlet>
<servlet>
<servlet-name>About</servlet-name>
<servlet-class>my_root_package.servlets.controllers.About</servlet-class>
</servlet>
<servlet>
<servlet-name>AdminDashboard</servlet-name>
<servlet-class>my_root_package.servlets.controllers.AdminDashboard</servlet-class>
</servlet>
<servlet>
<servlet-name>AdminAuthentification</servlet-name>
<servlet-class>my_root_package.servlets.secutity.controllers.AdminAuthentification</servlet-class>
</servlet>
<servlet>
<servlet-name>AdminPassReset</servlet-name>
<servlet-class>my_root_package.servlets.secutity.controllers.AdminPassReset</servlet-class>
</servlet>
<servlet>
<servlet-name>Search</servlet-name>
<servlet-class>my_root_package.servlets.controllers.Search</servlet-class>
</servlet>
<!-- SERVLETS MAPPING -->
<servlet-mapping>
<servlet-name>Welcome</servlet-name>
<url-pattern>/welcome</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Statistic</servlet-name>
<url-pattern>/statistic</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Genea_Tree</servlet-name>
<url-pattern>/genea_tree</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Genea_TreeEdit</servlet-name>
<url-pattern>/genea_tree/DetailEdit</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Genea_TreeEdit</servlet-name>
<url-pattern>/genea_tree/DetailEditMore</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>New_event</servlet-name>
<url-pattern>/new_event</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Inscription</servlet-name>
<url-pattern>/inscription</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>InscriptionStep1</servlet-name>
<url-pattern>/inscription/step1</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>InscriptionStep2</servlet-name>
<url-pattern>/inscription/step2</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>InscriptionConfirm</servlet-name>
<url-pattern>/inscription/Confirmation</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>About</servlet-name>
<url-pattern>/about</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AdminAuthentification</servlet-name>
<url-pattern>/admin/Authentification</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AdminPassReset</servlet-name>
<url-pattern>/admin/PassReset</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AdminDashboard</servlet-name>
<url-pattern>/admin/dashboard</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AdminDashboard</servlet-name>
<url-pattern>/admin</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AdminDashboard</servlet-name>
<url-pattern>/admin/dashboard/insertionCommit</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AdminDashboard</servlet-name>
<url-pattern>/admin/dashboard/updateCommit</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AdminDashboard</servlet-name>
<url-pattern>/admin/dashboard/deleteCommit</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AdminDashboard</servlet-name>
<url-pattern>/admin/InsertionCommitPost</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AdminDashboard</servlet-name>
<url-pattern>/admin/updateCommitPost</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AdminDashboard</servlet-name>
<url-pattern>/admin/deleteCommitPost</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Search</servlet-name>
<url-pattern>/AdvancedSearch</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Search</servlet-name>
<url-pattern>/search</url-pattern>
</servlet-mapping>
\t <!-- ERROR PAGES -->
\t <error-page>
\t \t <exception-type>java.lang.Exception</exception-type>
\t \t <location>/WEB-INF/errorManagement.jsp</location>
\t </error-page>
\t <error-page>
\t \t <error-code>404</error-code>
\t \t <location>/WEB-INF/404ErrorManagement.jsp</location>
\t </error-page>
\t <jsp-config>
\t \t <jsp-property-group>
\t \t \t <url-pattern>*.jsp</url-pattern>
\t \t \t <page-encoding>UTF-8</page-encoding>
\t \t \t <include-prelude>/WEB-INF/taglibs.jsp</include-prelude>
\t \t </jsp-property-group>
\t </jsp-config>
\t
\t
\t <filter>
\t \t <filter-name>encodingfilter</filter-name>
\t \t <filter-class>my_root_package.filters.EncodingFilter</filter-class>
\t \t <init-param>
\t \t \t <param-name>encoding</param-name>
\t \t \t <param-value>UTF-8</param-value>
\t \t </init-param>
\t </filter>
<!-- \t FILTERS DEFs -->
\t <filter>
\t \t <filter-name>multipartFilter</filter-name>
\t \t <filter-class>my_root_package.filters.MultipartFilter</filter-class>
\t \t <init-param>
\t \t \t <param-name>maxFileSize</param-name>
\t \t \t <param-value>360000</param-value>
\t \t </init-param>
\t </filter>
\t <!-- \t FILTERS MAPPING -->
\t <filter-mapping>
\t \t <filter-name>encodingfilter</filter-name>
\t \t <url-pattern>/*</url-pattern>
\t </filter-mapping>
\t <filter-mapping>
\t \t <filter-name>multipartFilter</filter-name>
\t \t <url-pattern>/*</url-pattern>
\t </filter-mapping>
\t
</web-app>
スペルが修正されました – Heri
あなたの 'web.xml'と' appengine-web.xml'を含めることができますか?理想的にはデータニュークリアスがない、小さな自己完結型の例であっても良いでしょう。 –
ok、私はちょうどappengine-web.xmlとweb.xmlファイルを編集して追加します。 – alibaba