0

hibernate を既存の struts + ejb 2.0 アプリケーションに統合しようとしています。hibernate.cfg.xml からセッションを作成するための struts-hibernate プラグインを作成する必要がありました。モデルと hbm ファイルも作成しましたが、jar ファイルの競合のためにアプリケーションを起動できませんでした。私はこの例外を受け取り続けます:

[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)
4

3 に答える 3

1

クラスパスにdom4jがありますか?

于 2010-11-08T16:44:59.340 に答える
0

問題は、Web プロジェクトで、フォルダー内に dom4j-1.6.1.jar がないことですWEB-INF/lib。そこにjarを配置し、プロジェクトを再構築し(EARファイルを想定しています)、WASに再デプロイします(私が正しい場合)。

クラスパスに dom.jar があると、開発時にクラス ファイルのクラスパスを管理するのに Eclipse だけが役立ちますが、JAR/WAR/EAR ファイルをビルドするには、ライブラリを管理する必要があります (これは Eclipse でも構成できます)。

于 2010-11-08T21:03:12.550 に答える
0

はい、わかりました。問題はクラスパスにありましたが、web-inf/lib ではなく、server.xml にアプリケーションが必要とする jar のセットも必要とするサーバー クラス パスがありました。

どうもありがとうございました。

于 2010-11-08T23:55:06.913 に答える