2

私たちは「ボックス」Web製品を開発しているので、アプリケーションがデプロイされる環境を予測することはできません。このアプリケーションはスプリングセキュリティを使用します。しかし、Tomcatがアプリケーションをルートに配置していない場合、次の構成は失敗するようです。

<sec:http auto-config="true" >
    ....
    <sec:form-login login-page="/ui/Login" />

次の推奨事項:https ://stackoverflow.com/a/6934712/149818を使用する

#{servletContext.contextPath}動作しません。http:// foo / myApp / ui / Loginではなくユーザーがhttp:// foo / ui/Loginにリダイレクトされます

だから私の質問は

  • #{servletContext.contextPath}を有効にする方法
  • または、スプリングセキュリティに実際のcontextPathを強制的に認識させる方法
4

1 に答える 1

1

@Luke Taylorと@axtavtに感謝します-私のエラーには、ルート'/'がありません

<sec:http auto-config="true" use-expressions="true">
     <sec:intercept-url pattern="/ui/Login" 
                        access="IS_AUTHENTICATED_ANONYMOUSLY"/>

'/'が表示された場合-#{servletContext.contextPath}は正しく動作を開始します。

于 2011-12-12T12:29:45.470 に答える