0

Spring Security を使用した Web プロジェクトがあります。ユーザーは login.jsp から開始し、認証を通過して、hello.jsp に移動します。すべての JSP ページが WEB-INF にあることに注意してください。プロセス中に、URL が で始まりlocalhost:8081/Project1/pages/login.jsp、ページを送信した直後に、URL が に変更されていること に気付きましたhttp://localhost:8081/Project1/pages/j_spring_security_check;jsessionid=792884C463EAC3C6CBC155EA75F4C6E4

そして、認証後に hello.jsp を表示する代わりに HTTP ステータス 404 を表示するページ。コンソール出力に、次のメッセージが表示されます。

WARNING: No mapping found for HTTP request with URI [/SpringSecurity3/pages/j_spring_security_check] in DispatcherServlet with name 'SpringSecurity3'

Spring構成で構成ミスが何であるかわかりませんか? 構成コードは次のとおりです。

<http auto-config="true">
   <intercept-url pattern="/welcome*" access="ROLE_ADMIN"/>
   <intercept-url pattern="/pages/hello.jsp" access="ROLE_ADMIN"/>
   <form-login login-page="/login" default-target-url="/welcome" authentication-failure-url="/loginfailed" />
   <logout logout-success-url="/pages/login.jsp"/>
</http>

私のweb.xmlは次のとおりです。

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

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

<filter-mapping>
    <filter-name>springSecurityFilterChain</filter-name>
    <url-pattern>/WEB-INF/pages/*</url-pattern>
</filter-mapping>
4

2 に答える 2