1

私は、EclipseでのWebサービスと、今しばらく苦労してきました。 私は何か作業をするたびに、それは単に運に基づいているように見え、私はあらゆる方法ですべてを試しました。ウェブサービス:ClassNotFoundExceptionが

私の最近の問題は、次が含まれます。 私は外部参照(瓶)の多くを使用するJavaアプリケーションを持っています。 私は、エクスポートjarファイルは、すべての必要なリソースが含まれていることを確認するために脂肪ジャープラグイン(http://fjep.sourceforge.net/)を使用して、単純なjarファイルには、このJavaプロジェクトをエクスポートしてきました。 その後私は動的なWebプロジェクトを作成し、以前からこのプロジェクトにjarファイルを追加しました。 基本的なテストを行うと、すべて正常に動作します。つまり、Eclipseは必要なすべての参照を見つけます。しかし

、私はそのメソッドのテストとまったく同じロジックを使用して、私はエラーを取得するWebサービスを作成してみてください。 前にも述べたように、ローカルテストを行うときにEclipseが必要なすべてのリソースを検出するため、なぜClassNotFoundExceptionが発生するのか分かりません。

[INFO] Deploying module: addressing-1.6.1 - file:/C:/Users/Flamant/My  master/code/WorkspaceEclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp3/wtpwebapps /org.openmarkov.webservice.engine/WEB-INF/modules/addressing-1.6.1.mar 
[INFO] Deploying module: metadataExchange-1.6.1 - file:/C:/Users/Flamant/My  master/code/WorkspaceEclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp3/wtpwebapps /org.openmarkov.webservice.engine/WEB-INF/modules/mex-1.6.1.mar 
[INFO] Deploying module: mtompolicy-1.6.1 - file:/C:/Users/Flamant/My  master/code/WorkspaceEclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp3/wtpwebapps /org.openmarkov.webservice.engine/WEB-INF/modules/mtompolicy-1.6.1.mar 
[INFO] Deploying module: ping-1.6.1 - file:/C:/Users/Flamant/My  master/code/WorkspaceEclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp3/wtpwebapps /org.openmarkov.webservice.engine/WEB-INF/modules/ping-1.6.1.mar 
[INFO] Deploying module: script-1.6.1 - file:/C:/Users/Flamant/My  master/code/WorkspaceEclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp3/wtpwebapps /org.openmarkov.webservice.engine/WEB-INF/modules/scripting-1.6.1.mar 
[INFO] Deploying module: soapmonitor-1.6.1 - file:/C:/Users/Flamant/My  master/code/WorkspaceEclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp3/wtpwebapps /org.openmarkov.webservice.engine/WEB-INF/modules/soapmonitor-1.6.1.mar 
[INFO] The Engine service, which is not valid, caused java.lang.NoClassDefFoundError:  [Lorg/openmarkov/webservice/Finding; 
    at java.lang.Class.getDeclaredMethods0(Native Method) 
at java.lang.Class.privateGetDeclaredMethods(Unknown Source) 
at java.lang.Class.privateGetPublicMethods(Unknown Source) 
at java.lang.Class.getMethods(Unknown Source) 
at org.apache.axis2.description.java2wsdl.bytecode.MethodTable.loadMethods(MethodTable.java:43) 
at org.apache.axis2.description.java2wsdl.bytecode.MethodTable.<init>(MethodTable.java:33) 
at org.apache.axis2.description.java2wsdl.DefaultSchemaGenerator.<init>(DefaultSchemaGenerator.java:141) 
at org.apache.axis2.deployment.util.Utils.fillAxisService(Utils.java:453) 
at org.apache.axis2.deployment.ServiceBuilder.populateService(ServiceBuilder.java:389) 
at org.apache.axis2.deployment.repository.util.ArchiveReader.buildServiceGroup(ArchiveReader.java:101) 
at org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:178) 
at org.apache.axis2.deployment.ServiceDeployer.deploy(ServiceDeployer.java:82) 
at org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136) 
at org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:813) 
at org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144) 
at org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:370) 
at org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:254) 
at org.apache.axis2.deployment.DeploymentEngine.loadServices(DeploymentEngine.java:142) 
at org.apache.axis2.deployment.WarBasedAxisConfigurator.loadServices(WarBasedAxisConfigurator.java:283) 
at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:95) 
at org.apache.axis2.transport.http.AxisServlet.initConfigContext(AxisServlet.java:584) 
at org.apache.axis2.transport.http.AxisServlet.init(AxisServlet.java:454) 
at org.apache.axis2.webapp.AxisAdminServlet.init(AxisAdminServlet.java:60) 
at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1228) 
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1147) 
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1043) 
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4957) 
at org.apache.catalina.core.StandardContext$3.call(StandardContext.java:5284) 
at org.apache.catalina.core.StandardContext$3.call(StandardContext.java:5279) 
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) 
at java.util.concurrent.FutureTask.run(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
at java.lang.Thread.run(Unknown Source) 
Caused by: java.lang.ClassNotFoundException: org.openmarkov.webservice.Finding 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678) 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1523) 
... 34 more 

[INFO] org.apache.axis2.deployment.DeploymentException: java.lang.NoClassDefFoundError:  [Lorg/openmarkov/webservice/Finding; 
[INFO] Deploying Web service: version.aar - file:/C:/Users/Flamant/My master/code/WorkspaceEclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp3/wtpwebapps/org.openmarkov.webservice.engine/WEB-INF/services/version.aar 
[WARN] No transportReceiver for org.apache.axis2.transport.http.AxisServletListener found. An instance for HTTP will be configured automatically. Please update your axis2.xml file! 
apr 11, 2012 10:51:45 AM org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["http-bio-8081"] 
apr 11, 2012 10:51:45 AM org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["ajp-bio-8010"] 
apr 11, 2012 10:51:45 AM org.apache.catalina.startup.Catalina start 
INFO: Server startup in 1928 ms 

誰かがアイデアを持っているなら、私はそれを高く評価します。

おかげで、 トーマス

+0

どのようにWebサービスを作成していますか?どのaxis2バージョンを使用していますか? – shashankaholic

答えて

0

は日食環境でWebサービスが正常に動作するときには意味するかが、あなたの動的Webプロジェクトでは動作しませんか?あなたのダイナミックなWebプロジェクトでjarが見つかりませんか?

+0

いいえ、動的Webプロジェクトでは、インポートされた.jarファイルからメソッドを呼び出す 'テスト'パッケージを作成しました。これらはすべて正常に動作します。それは、エラーが発生するというWebサービス(クラスから、テストパッケージのテストとまったく同じロジックを使用する)を作成しようとするときだけです。 – user1211204

+0

必要なすべてのjarが存在する場合は、jarの競合が発生する可能性があるかどうかを確認します。 – snow8261

1

実は、あなたはLIBSは、あなたの実行時クラスパスにあるチェック...必要なlibsのは、実行時に見つからない場合に発生するNoClassDefFoundErrorがし、直面している...

+0

あなたの返事をありがとう。私は確かに同じ結論に達しました。しかし、私はまだこれを解決する方法を知らない。必要なすべての.jarsとプロジェクトを、(1)libディレクトリ、(2)プロパティのJava Buildパス、(3)プロパティのデプロイメントアセンブリに追加しました。 – user1211204

+0

こんにちは、あなたのランタイムクラスパスでlibsを追加...プロジェクトビューに移動する特定のクラス/プロジェクトを右クリック - >で実行 - >設定を実行 - >そこにクラスパスを設定(そこにジャーを追加) – Ratha

0

少なくともこれら 活性化-1.1.jarていることを確認し、 axiom-api-1.2.8.jar、 axiom-dom-1.2.8.jar、 axiom-impl-1.2.8.jar、 axis2-adb-1.5.1.jar、 axis2-kernel-1.5 .1.jar、 axis2-transport-http-1.5.1.jar、 axis2-transport-local-1.5.1.jar、 commons-codec-1.3.jar、 commons-fileupload-1.2。瓶、 コモンズ-HTTPClientの-3.1.jar、 コモンズ・ログ-1.1.1.jar、 のgeronimo-STAX-api_1.0_spec-1.0.1.jar、 httpcore-4.0.jar、 メール-1.4.jar 、 neethi-2.0.4.jar、 ウッデン-API-1.0M8.jar、 ウッデン-IMPL-DOM-1.0M8.jar、 WSDL4J-1.6.2.jar、 wstx-ASL-3.2.4。瓶、 XMLSchemaの-1.4.3.jar

0

私もこの問題に直面しました。私の場合は、[1]の記事で明確にステップを踏襲していません。ステップ12で、 "サービスプロジェクト"の名前を変更しないでください。

+1

外部リンクを参照するのではなく、あなたの答えに細かい情報を与えてください。 –