0

アプリをGAEにデプロイしようとしていますが、デフォルトを除くすべてのページ(jsp)で常に404notfoundエラーが発生します。問題なく動作するRESTfulWebサービス。私はnetbeans7.1.1とgae1.6.4.1を使用しています

ローカルでテストすると、すべて問題なく動作します。しかし、私がそれをアップロードすると、常にデフォルトのページしか利用できません。私はほとんどすべてを試しました。

appcfg.cmdを使用して、ファイルがGAE上にあるかどうかを確認しようとしました。GAEからファイルをダウンロードしたところ、誰も不足していないことがわかったので、更新プロセスはおそらく成功しました。

netbeansプラグインの代わりにappcfgスクリプトを使用してアップロードしようとしましたが、次の理由でプロセスが失敗しました。

com.google.appengine.tools.admin.JspCompilationException:jspファイルのコンパイルに失敗しました。

appcfgスクリプト、searechインターネットを使用してほぼ一日中動作させることはできず、可能な解決策は見つかりませんでした。netbeansプラグインを使用したアップロードは問題なく機能しました。

では、常に404をgaeに投げる理由は何でしょうか?助けてください。

非常にThx。他に情報が必要な場合は、ここに投稿させていただきます。

はい、これが私のweb.xmlです

<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
    <servlet-name>facebookLogin</servlet-name>
    <servlet-class>Login.FacebookLogin</servlet-class>
</servlet>
<servlet>
    <servlet-name>PlanProcess</servlet-name>
    <servlet-class>Input.PlanProcess</servlet-class>
</servlet>
<welcome-file-list>
    <welcome-file>login.jsp</welcome-file>
</welcome-file-list>
<servlet-mapping>
    <servlet-name>facebookLogin</servlet-name>
    <url-pattern>/facebooklogin</url-pattern>
</servlet-mapping>
<servlet>
    <servlet-name>private</servlet-name>
    <jsp-file>private.jsp</jsp-file>
</servlet>
<servlet-mapping>
    <servlet-name>private</servlet-name>
    <url-pattern>/private</url-pattern>
</servlet-mapping>
<servlet>
    <servlet-name>editPlan</servlet-name>
    <jsp-file>editTrainingPlan.jsp</jsp-file>
</servlet>
<servlet-mapping>
    <servlet-name>editPlan</servlet-name>
    <url-pattern>/private/trainingplan/*</url-pattern>
</servlet-mapping>
<servlet>
    <servlet-name>listplans</servlet-name>
    <jsp-file>listTrainingPlans.jsp</jsp-file>
</servlet>
<servlet-mapping>
    <servlet-name>listplans</servlet-name>
    <url-pattern>/private/listplans</url-pattern>
</servlet-mapping>
<servlet>
    <servlet-name>visualize</servlet-name>
    <jsp-file>visualize.jsp</jsp-file>
</servlet>
<servlet-mapping>
    <servlet-name>visualize</servlet-name>
    <url-pattern>/private/visualize</url-pattern>
</servlet-mapping>
<servlet>
    <servlet-name>graph</servlet-name>
    <jsp-file>graph.jsp</jsp-file>
</servlet>
<servlet-mapping>
    <servlet-name>graph</servlet-name>
    <url-pattern>/graph/*</url-pattern>
</servlet-mapping>
<servlet>
    <servlet-name>created</servlet-name>
    <jsp-file>created.jsp</jsp-file>
</servlet>
<servlet-mapping>
    <servlet-name>created</servlet-name>
    <url-pattern>/created</url-pattern>
</servlet-mapping>
<servlet>
    <servlet-name>login</servlet-name>
    <jsp-file>login.jsp</jsp-file>
</servlet>
<servlet-mapping>
    <servlet-name>login</servlet-name>
    <url-pattern>/login</url-pattern>
</servlet-mapping>
<servlet>
    <servlet-name>newRecord</servlet-name>
    <jsp-file>newRecord.jsp</jsp-file>
</servlet>
<servlet-mapping>
    <servlet-name>newRecord</servlet-name>
    <url-pattern>/private/newrecord</url-pattern>
</servlet-mapping>
<servlet>
    <servlet-name>newPlan</servlet-name>
    <jsp-file>newPlan.jsp</jsp-file>
</servlet>
<servlet-mapping>
    <servlet-name>newPlan</servlet-name>
    <url-pattern>/private/newplan</url-pattern>
</servlet-mapping>
<servlet>
    <servlet-name>newExcercise</servlet-name>
    <jsp-file>newExcercise.jsp</jsp-file>
</servlet>
<servlet-mapping>
    <servlet-name>newExcercise</servlet-name>
    <url-pattern>/private/newexcercise</url-pattern>
</servlet-mapping>
<servlet>
    <servlet-name>Jersey Web Application</servlet-name>
    <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
    <init-param>
        <param-name>com.sun.jersey.config.property.packages</param-name>
        <param-value>Webservice</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>Jersey Web Application</servlet-name>
    <url-pattern>/api/*</url-pattern>
</servlet-mapping>
<servlet>
    <servlet-name>test</servlet-name>
    <servlet-class>test.InsertToDb</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>test</servlet-name>
    <url-pattern>/testinsert</url-pattern>
</servlet-mapping>
<servlet>
    <servlet-name>recordProcess</servlet-name>
    <servlet-class>Input.RecordProcess</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>recordProcess</servlet-name>
    <url-pattern>/record_process</url-pattern>
</servlet-mapping>
<servlet>
    <servlet-name>excerciseProcess</servlet-name>
    <servlet-class>Input.ExcerciseProcess</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>excerciseProcess</servlet-name>
    <url-pattern>/excercise_process</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>PlanProcess</servlet-name>
    <url-pattern>/plan_process</url-pattern>
</servlet-mapping>

4

2 に答える 2

0

JSP を .NET 内の何かにマップしたことはありませんweb.xml。どうしてそれをするの?

于 2012-04-24T16:45:51.537 に答える
0

何時間ものデバッグと検索の後、jsp ファイルをマップしたい場合は

使用する必要があります

<servlet>
    <servlet-name>editPlan</servlet-name>
    <jsp-file>**/**xxx.jsp</jsp-file>
</servlet>

それ以外の

<servlet>
    <servlet-name>editPlan</servlet-name>
    <jsp-file>xxx.jsp</jsp-file>
</servlet>

パスの「/」は必須です。loaclhost では機能しますが、gae ではデプロイされません。なんてがらくた...

于 2012-04-24T12:41:16.977 に答える