簡體   English   中英

嘗試在virgo tomcat中配置自定義會話管理器時獲取ClassNotFoundException

[英]Getting a ClassNotFoundException when trying to configure a custom session manager in virgo tomcat

我正在使用嵌入式tomcat的eclipse處女座服務器。 我想使用我創建的自定義會話管理器,它存在於osgi包中。 我已經將osgi包配置為片段,其中catalina包是片段主機。 同樣在我的context.xml中,我通過指定完全限定的類名來配置會話管理器。

問題是在啟動時我得到了會話管理器的ClassNotFoundException。

我已經嘗試將我的jar添加到lib文件夾並修改config.ini以使我的jar在啟動時加載,但這沒有幫助

在這種情況下,我應該怎么做才能確保在啟動時找到我的類。

您可以使用本博客中描述的Virgo Shell命令來分析類加載問題。 例如,您可以列出可以加載類的所有包。 看一下Virgo FAQ如果需要,如何將導入添加到第三方軟件包。

啟用類加載器調試有幫助,

在configuration / config.ini中添加以下屬性

osgi.debug=configuration/equinox-debug.properties

在configuration / equinox-debug.properties中添加以下屬性,

org.eclipse.osgi/debug=true
org.eclipse.osgi/debug/loader=true

現在,當您重新啟動容器時,它會打印出試圖加載您的類的BundleClassLoader。 我希望我的bundle能夠作為一個片段添加到正在加載這個類的bundle中,所以一旦我弄清楚哪個bundle正在加載該類,我只是將它用作片段主機。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM