1 回答

TA貢獻1789條經驗 獲得超8個贊
問題是 java 安全試圖在AuthConfigFactory::getFactory()
. 它首先檢查安全屬性是否authconfigprovider.factory
存在。
如果該屬性authconfigprovider.factory
不存在,它將創建為類的默認實例org.apache.catalina.authenticator.jaspic.AuthConfigFactoryImpl
,這可能沒問題。
問題是當您嘗試在已在 java.security 文件中定義該安全屬性的機器上運行時authconfigprovider.factory
(com.ibm.ws.security.jaspi.ProviderRegistry
可能該機器用于 WebSphere)。
所以當然你沒有課程com.ibm.ws.security.jaspi.ProviderRegistry
,你會得到ClassNotFoundException
。
要解決它,請嘗試創建您自己的 java.security 文件并將其定位在您的應用程序下,在該文件內 - 覆蓋屬性,如authconfigprovider.factory=org.apache.catalina.authenticator.jaspic.AuthConfigFactoryImpl
.
要使您的新 java.security 文件處于活動狀態,請添加 jvm 參數-Djava.security.properties=java.security
。
添加回答
舉報