2013-04-04 92 views
0

我的應用程序使用Tomcat Embedded公開了Web應用程序。
它使用用戶名和密碼驗證進行保護。從我的web.xml升級tomcat-embeded版本後基本登錄驗證失敗

<login-config> 
    <auth-method>BASIC</auth-method> 
    <realm-name>BMC Application Diagnostics Portal Console</realm-name> 
</login-config> 

我實現我自己的境界,我配置它在我的Tomcat實例:

_tomcat.setDefaultRealm(new MyRealm()); 

一切都工作得很好,直到我不得不升級Tomcat的版本(至少7.0.30)。升級tomcat-embed-core.jar和tomcat-embed-jasper.jar後,我無法訪問我的Web應用程序。
彈出認證窗口,我插入我的用戶名和密碼,但它無法登錄(看起來像用戶名\密碼不正確的行爲)。
我沒有改變我的代碼!如果我將罐子交換回7.0.22,一切正常。

順便說一句,setDefaultRealm()已棄用,不知道是否有幫助。

如果以前有人遇到過這個問題,或者有想法如何處理這個問題,那就太好了。

感謝

回答

0

找到了答案here。自版本7.0.24 Realm應設置爲Engine,如下所示:

_tomcat.getEngine().setRealm(new MyRealm());