0

以下は私の web.xml の内容です。アプリケーションは websphere 8.5 にデプロイされています。

<filter>
    <filter-name>securityFilter</filter-name>
    <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>

<filter-mapping>
    <filter-name>CheckFilter</filter-name>
    <url-pattern>/index.jsp</url-pattern>
</filter-mapping>
<welcome-file-list>
    <welcome-file>index.jsp</welcome-file>

私が直面している問題は、 https://servername:portNumber/contextPath/?QueryParamのような URL にアクセスしたときに CheckFilter が呼び出されないことです 。

しかし、URL https://servername:portNumber/contextPath/index.jsp?QueryParam を入力すると

フィルターが呼び出されています。最初の URL の応答を取得するには、何を変更する必要がありますか。

つまり、index.jsp フィルターを指定せずに呼び出す必要があります。

4

1 に答える 1

0

したがって、要件に応じて2つのオプションがあります

1) このように urlpattern を追加し/ます (アプリケーション コンテキストだけを呼び出すと、パターンに index.jsp がないため)

<filter-mapping>
        <filter-name>RootFilter</filter-name>
        <url-pattern>/index.jsp</url-pattern>
        <url-pattern>/</url-pattern>
</filter-mapping>

2) リクエストは に転送されるため、次のようにフィルタ マッピングにindex.jsp追加できます。FORWARD

<filter-mapping>
    <filter-name>RootFilter</filter-name>
    <url-pattern>/index.jsp</url-pattern>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
</filter-mapping>
于 2016-09-23T08:46:12.620 に答える