2
我們正在開發「盒子」網絡產品,所以我無法預見部署應用程序的環境。此應用程序使用彈簧安全。但它似乎如果Tomcat應用程序放置在沒有根,然後下面的配置失敗:在spring security中指定可變上下文路徑(3.0.x)
<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
我很確定上下文路徑自動附加到'login-page'。你使用哪個版本的Spring Security? – axtavt
@axtavt它是3.0.7 – Dewfy
這聽起來不對。處理重定向的'LoginUrlAuthenticationEntryPoint'類將始終包含作爲URL一部分的上下文路徑(例如,示例應用程序具有上下文路徑)。你能發佈重定向發生的調試日誌的相關部分嗎?您通常應該看到[FAQ](http://static.springsource.org/spring-security/site/faq/faq.html#faq-anon-access-denied)中所述的ExceptionTranslationFilter消息,以及不久之後,「重定向到」後面跟着URL。 –