2010-11-08 59 views
0

我想將hibernate集成到現有的struts + ejb 2.0應用程序中。我不得不從hibernate.cfg.xml中爲會話創建編寫一個struts-hibernate插件。我也創建了模型和hbm文件,但我想,由於jar文件衝突,我無法啓動應用程序。我一直得到這個例外:Struts 1.1 + Hibernate 3.2集成

[11/8/10 10:58:59:257 EST] 00000023 ServletWrappe E SRVE0100E: Did not realize init() exception thrown by servlet action: java.lang.NoClassDefFoundError: org.dom4j.io.OutputFormat 
at java.lang.J9VMInternals.verifyImpl(Native Method) 
at java.lang.J9VMInternals.verify(J9VMInternals.java:59) 
at java.lang.J9VMInternals.initialize(J9VMInternals.java:120) 
at org.hibernate.cfg.Configuration.reset(Configuration.java:212) 
at org.hibernate.cfg.Configuration.<init>(Configuration.java:197) 
at org.hibernate.cfg.Configuration.<init>(Configuration.java:201) 
at com.vo.common.struts.utils.HibernatePlugIn.init(HibernatePlugIn.java:47) 
at org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:1158) 
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:473) 
at javax.servlet.GenericServlet.init(GenericServlet.java:256) 
at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:185) 
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.init(ServletWrapper.java:316) 
at com.ibm.ws.webcontainer.servlet.ServletWrapper.initialize(ServletWrapper.java:1119) 
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.initialize(ServletWrapper.java:149) 
+0

Prashanth Muthyala,你想在你的答案中與他人談話嗎? StackOverflow不是用來這樣使用的。答案應該回答原來的問題。使用「添加註釋」與其他人進行對話。 – 2010-11-08 23:58:31

回答

1

你的類路徑上有dom4j嗎?

0

問題是,在您的web項目中,WEB-INF/lib文件夾中沒有dom4j-1.6.1.jar。把jar放在那裏,重建你的項目(我假設EAR文件)並重新部署到WAS(如果我是正確的)。

在你的classpath中擁有dom.jar只會幫助Eclipse在開發時管理類文件的classpath,但是構建JAR/WAR/EAR文件時,你必須管理你的庫(你也可以在Eclipse中配置它)。

0

是的,我知道了,問題出在classpath上,但不是web-inf/lib,而是服務器類路徑,在server.xml中還需要具有應用程序所需的一組jar。

非常感謝。