1

アプリケーションの実行中に、次のエラーが発生しました。エラーは実行時にのみ発生しています。正常にコンパイルされました。

問題なくEclipseで実行されました。しかし、Apache 軸を使用すると、サーバーへのアップロード中に次のエラー トレースが発生します。Apache axis2 jar ファイルは実行時に実行されませんが、正常にコンパイルされます。

アプリケーションは Oracle R12 サーバーで実行されています。R12 サーバーでランタイムのクラスパスを設定するオプションが見つかりませんでした。

使用する Java バージョンは 1.6 で、Apache axis2.1.6.2

エラー トレース:

Exception :java.lang.NoClassDefFoundError: Could not initialize class org.apache.axis2.description.AxisService
Error : java.lang.NoClassDefFoundError: Could not initialize class org.apache.axis2.description.AxisService
com.rightnow.ws.wsdl.RightNowSyncServiceStub.populateAxisService(RightNowSyncServiceStub.java:41)
com.rightnow.ws.wsdl.RightNowSyncServiceStub.(RightNowSyncServiceStub.java:636)
com.rightnow.ws.wsdl.RightNowSyncServiceStub.(RightNowSyncServiceStub.java:625)
com.rightnow.ws.wsdl.RightNowSyncServiceStub.(RightNowSyncServiceStub.java:673)
com.rightnow.ws.wsdl.RightNowSyncServiceStub.(RightNowSyncServiceStub.java:665)
com.rightnow.ws.util.ContactUtils.initializeService(ContactUtils.java:57)
_somejsp._jspService(_somejsp.java:189)
com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:473)
oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
oracle.apps.jtf.base.session.ReleaseResFilter.doFilter(ReleaseResFilter.java:26)
com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
oracle.apps.fnd.security.AppsServletFilter.doFilter(AppsServletFilter.java:318)
com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:642)
com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:391)
com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:908)
com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:458)
com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:313)
com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:199)
oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
java.lang.Thread.run(Thread.java:619)
4

2 に答える 2

0

サーバーの lib ディレクトリにすべての axis2 関連ライブラリを配置するか、.war ファイルにパッケージ化する必要があります。

Eclipse でこれを処理するには、プロジェクトを選択して次の場所に移動します。

プロパティ -> 配置アセンブリ -> 追加 -> Java ビルド パス エントリ

すべてのaxis2 jarを追加します。これにより、関連するすべての jar が .war と一緒にバンドルされます。

別の解決策は、すべての axis2 jar を WebContent/WEB-INF/lib にハードコピーすることです。

于 2013-01-25T07:52:33.217 に答える
0

Java の NoClassDefFoundError は、Java 仮想マシンが実行時にコンパイル時に利用可能だった特定のクラスを見つけることができない場合に発生します。サーバーに axis.jar がないか、間違って配置されているはずです。もう一度確認してください。

于 2013-01-25T07:05:44.380 に答える