我嘗試在JBoss服務器上添加緩存系統,如Resteasy文檔中所述: Resteasy Caching Features,第29.3部分。 (本地服務器端的響應緩存):The ServletServerCache和ClassNotFoundException mysocket
你所要做的下一件事是添加了ServletContextListener,org.jboss.resteasy.plugins.cache.server.ServletServerCache。這必須在web.xml文件中的ResteasyBootstrap偵聽器之後指定。
所以,我沒有,我添加了一個ServletServerCache監聽器,因爲它是在ResteasyBootstrap聽者後的web.xml中說:
<listener>
<listener-class>
org.jboss.resteasy.plugins.cache.server.ServletServerCache
</listener-class>
</listener>
不幸的是,這產生一個ClassNotFoundException在部署階段:
14:01:44817 ERROR [。org.apache.catalina.core.ContainerBase [jboss.web] [本地主機] [/ DoQuBookWeb]] ERREUR的LOR德拉配置德拉CLASSE D'écoute de l'applica重刑(應用程序監聽器)org.jboss.resteasy.plugins.cache.server.ServletServerCache:拋出java.lang.ClassNotFoundException:org.jboss.resteasy.plugins.cache.server.ServletServerCache
(抱歉,法國BTW )
所以我的問題是:我是唯一在這種情況下(它似乎不是在谷歌常見的錯誤)?我的錯誤是什麼?什麼是正確的方法?
因爲我用maven信息,我包括RestEasy的高速緩存,核心2.3.1.GA依賴性的dI'm在這一點上很有點失落......
預先感謝您的幫助。
編輯:
我看着部署在Web服務器的檔案。而且我也發現了罐RestEasy的緩存芯(含ServletServerCache)
下面是簡要介紹了項目的架構:
- Main project
- Ear project (generate the deployed EAR)
- pom.xml
- Ejb project (generate an embeded JAR)
- all ejbs
- pom.xml
- Web project (generate an embeded WAR)
- some js stuff
- web.xml
- pom.xml
後「MVN部署」,在輸出Maven2的給出了一個自包含EAR填充:
- lib/*.jar
- META-INF/
- application.xml
- etc
- Ejb-1.0.0.jar (all ejbs)
- Web.war
- js stuff/
- META-INF/
- etc
- WEB-INF/
- web.xml CALLING ServletServerCache
- jboss-web.xml
- jboss-app.xml
- lib/*.jar WITH resteasy-cache-core.X.X.X.jar
- classes/
因此,恕我直言,Maven2正確捆綁它。但是什麼?這仍然是神祕的。
有什麼想法?我不明白爲什麼這個班還沒有找到。
(對不起了這麼長的帖子)
您是否將具有該類的相關JAR添加到您的構建路徑中?如果是這樣,你是否爲這個類設置了正確的'ClassLoader'? – m0skit0 2012-08-13 12:50:55
你好,我該如何爲ServlerServerCache類指定一個ClassLoader?我該如何檢查Jar是否在構建路徑中(我的意思是,這是由maven完成的,不是嗎?) – Godjam 2012-08-13 12:52:49
你在使用什麼IDE? – m0skit0 2012-08-13 12:59:23