0

基本的な jsp とサーブレットを使用する単純な Web アプリケーションがあります。/* にマップされたサーブレット フィルターがあります。index.jsp に構成されたウェルカム ファイルがあります。

<filter-mapping>
    <filter-name>ObjectifyFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

...

<welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
</welcome-file-list>

私が抱えている問題は、存在しないリソースへのリクエストがアプリ エンジンにデプロイされたときに 404 エラーを返す必要がある場合に、スラッシュ + ウェルカム ファイルを繰り返し追加しようとしているときに 302 が際限なく返されることです。

例: http://myyapp.appspot.com/foo (foo 用に何も構成されていない) に対する要求は、次のようになります。

http://myyapp.appspot.com/foo/index.jsp/index.jsp/index.jsp/index.jsp/index.jsp/index.jsp/index.jsp/index.jsp/index.jsp/index. jsp/index.jsp/index.jsp/index.jsp/index.jsp/index.jsp/index.jsp/index.jsp/index.jsp/index.jsp/index.jsp/

開発サーバーでは、これは予想される 404 を返します。フィルター マッピングを削除すると、アプリ エンジンでも 404 が返されます。

これはかなり基本的なことのように思えるので、どこかで何かを見逃していると思います。何か案は?

4

1 に答える 1

0

この問題の重要な要素の 1 つは、web.xml の jsp-config タグにあるようです。内容はどうでもいいと思いますが、私の場合はこんな感じでした。

<jsp-config>
    <jsp-property-group>
        <url-pattern>*.jsp</url-pattern>
        <page-encoding>UTF-8</page-encoding>
    </jsp-property-group>
</jsp-config>

jsp-config タグを削除すると問題が解決しました。つまり、回避策です。私の場合は、各ページで個別にページ エンコーディングを指定できるため、大きな問題はありませんでした。しかし、私はまだ本当の解決策に興味があります。

于 2013-01-14T21:05:38.553 に答える