web-dev-qa-db-ja.com

java.lang.NoClassDefFoundError:org / Apache / ws / commons / schema / resolver / URIResolver

単純な "Hello" Webサービスを作成しようとすると、次のエラーが発生します。

type Exception report

message Servlet.init() for servlet AxisServlet threw exception

description The server encountered an internal error that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: Servlet.init() for servlet AxisServlet threw exception
org.Apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.Java:505)
org.Apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.Java:103)
org.Apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.Java:956)
org.Apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.Java:423)
org.Apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.Java:1079)
org.Apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.Java:625)
org.Apache.Tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.Java:318)
Java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.Java:1145)
Java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.Java:615)
org.Apache.Tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.Java:61)
Java.lang.Thread.run(Thread.Java:745)

root cause

Java.lang.NoClassDefFoundError: org/Apache/ws/commons/schema/resolver/URIResolver
org.Apache.axis2.deployment.ModuleDeployer.deploy(ModuleDeployer.Java:128)
org.Apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.Java:144)
org.Apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.Java:585)
org.Apache.axis2.deployment.RepositoryListener.init(RepositoryListener.Java:264)
org.Apache.axis2.deployment.RepositoryListener.init2(RepositoryListener.Java:66)
org.Apache.axis2.deployment.RepositoryListener.<init>(RepositoryListener.Java:61)
org.Apache.axis2.deployment.DeploymentEngine.loadRepository(DeploymentEngine.Java:152)
org.Apache.axis2.deployment.WarBasedAxisConfigurator.getAxisConfiguration(WarBasedAxisConfigurator.Java:233)
org.Apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.Java:64)
org.Apache.axis2.transport.http.AxisServlet.initConfigContext(AxisServlet.Java:620)
org.Apache.axis2.transport.http.AxisServlet.init(AxisServlet.Java:471)
org.Apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.Java:505)
org.Apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.Java:103)
org.Apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.Java:956)
org.Apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.Java:423)
org.Apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.Java:1079)
org.Apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.Java:625)
org.Apache.Tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.Java:318)
Java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.Java:1145)
Java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.Java:615)
org.Apache.Tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.Java:61)
Java.lang.Thread.run(Thread.Java:745)

root cause

Java.lang.ClassNotFoundException: org.Apache.ws.commons.schema.resolver.URIResolver
org.Apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.Java:1856)
org.Apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.Java:1705)
org.Apache.axis2.deployment.ModuleDeployer.deploy(ModuleDeployer.Java:128)
org.Apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.Java:144)
org.Apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.Java:585)
org.Apache.axis2.deployment.RepositoryListener.init(RepositoryListener.Java:264)
org.Apache.axis2.deployment.RepositoryListener.init2(RepositoryListener.Java:66)
org.Apache.axis2.deployment.RepositoryListener.<init>(RepositoryListener.Java:61)
org.Apache.axis2.deployment.DeploymentEngine.loadRepository(DeploymentEngine.Java:152)
org.Apache.axis2.deployment.WarBasedAxisConfigurator.getAxisConfiguration(WarBasedAxisConfigurator.Java:233)
org.Apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.Java:64)
org.Apache.axis2.transport.http.AxisServlet.initConfigContext(AxisServlet.Java:620)
org.Apache.axis2.transport.http.AxisServlet.init(AxisServlet.Java:471)
org.Apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.Java:505)
org.Apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.Java:103)
org.Apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.Java:956)
org.Apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.Java:423)
org.Apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.Java:1079)
org.Apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.Java:625)
org.Apache.Tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.Java:318)
Java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.Java:1145)
Java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.Java:615)
org.Apache.Tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.Java:61)
Java.lang.Thread.run(Thread.Java:745)

誰か助けてもらえますか?インターネットで検索したところ、Apache Tomcat libディレクトリに配置する必要があるhttpcore-xx.jarファイルがあることがわかりました。試してみましたがうまくいきませんでした。私はubuntu 14.04 LTSとEclipseを使用しています。また、プロジェクトをクリーンアップして、ビルドし直しました。うまくいきませんでした。私が直面しているのは、ページがWebブラウザーに読み込まれていることですが、サービスをクリックすると、前のエラーが表示されます。私が実装しようとしているチュートリアルは http://codeoncloud.blogspot.gr/2012/12/create-Java-web-service-in-Eclipse_3982.html

9
George Melidis

私は同じ問題を抱えており、xmlschema-core-*.jaraxis2-*/lib/my_project_root_directory/WebContent/WEB-INF/lib/

28
liqing

単純なWebサービス(構成済み:動的Webモジュール2.5)も作成しようとしています。使用するのは-Tomcat 8.0および-Axis2 1.7.4(axis2-1.7.4-war)です。

次のエラーが発生します。

[WARN] Web application uses org.Apache.axis2.transport.http.AxisAdminServlet; please update web.xml to use org.Apache.axis2.webapp.AxisAdminServlet instead
[INFO] Clustering has been disabled
[WARN] Unable to instantiate deployer org.Apache.axis2.deployment.ServiceDeployer; see debug logs for more details
abr 13, 2017 9:03:35 PM org.Apache.catalina.core.ApplicationContext log
Grave: StandardWrapper.Throwable
Java.lang.NoClassDefFoundError: org/Apache/ws/commons/schema/resolver/URIResolver
    at org.Apache.axis2.deployment.ModuleDeployer.deploy(ModuleDeployer.Java:128)   
    (...) 

Caused by: Java.lang.ClassNotFoundException: org.Apache.ws.commons.schema.resolver.URIResolver
    at org.Apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.Java:1332)
    ... 24 more

abr 13, 2017 9:03:35 PM org.Apache.catalina.core.StandardContext loadOnStartup
Grave: Servlet [AxisAdminServlet] in web application [/AxisTestWebServer] threw load() exception
Java.lang.ClassNotFoundException: org.Apache.ws.commons.schema.resolver.URIResolver
    at org.Apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.Java:1332)
    (...)

最初の問題は[警告]でした:

「[警告] Webアプリケーションはorg.Apache.axis2.transport.http.AxisAdminServletを使用しています。代わりにorg.Apache.axis2.webapp.AxisAdminServletを使用するようにweb.xmlを更新してください」

解決策:必要に応じてweb.xmlを更新して解決しました。


2番目の問題は:

  • Java.lang.NoClassDefFoundError:org/Apache/ws/commons/schema/resolver/URIResolver
  • 原因:Java.lang.ClassNotFoundException:org.Apache.ws.commons.schema.resolver.URIResolver

何らかの理由で、Axis2で構成された新しい動的Webプロジェクトを作成したときに、xmlschema-core-2.2.1.jar(axis2/WEB-INF/lib)がWebContent/WEB-INF/libにインポートされませんでした。

解決策:そこで、そこに貼り付ける必要がありました。


その後、jstlの他の問題:

  • この問題は、WebServiceで管理者としてログインしようとしたときに発生しました

abr 13、2017 9:54:30 PM org.Apache.catalina.core.ApplicationDispatcherがGraveを呼び出す:サーブレットjspのServlet.service()が例外org.Apache.jasper.JasperException:をスローしました絶対URI: http://Java.Sun.com/jsp/jstl/core web.xmlまたはこのアプリケーションでデプロイされたjarファイルでは解決できません(...)

解決:

私はこれらのjarをダウンロードしました:-taglibs-standard-impl-1.2.5.jarおよび-taglibs-standard-spec-1.2.5.jar

from Tomcat.Apache.org/download-taglibs.cgi

そのため、WebContent/WEB-INF/libにも貼り付ける必要がありました。

それはすべての人々です。お役に立てば幸いです。

3
Davijr

ITも私に役立ちました。 axis2-1.7とaxis2-1.6はどちらも動作しましたが、xml-coreをweb/libフォルダーとビルドパスにコピーするだけで動作しました。

0
Waseem Saeed

これは私のために働きました:

https://yiingw.wordpress.com/2018/02/12/axis2-Java-lang-noclassdeffounderror-org-Apache-ws-commons-schema-utils-namespaceprefixlist/

理由:Axis2 1.7.xはAxis2 1.6.xと互換性のないXmlSchema 2.2.xを使用しており、EclipseはXmlSchemaの新しいバージョンをWebにコピーしません応用。

解決策:xmlschema-core-2.2.1.jarを$ AXIS2_HOME/libからEclipseプロジェクトディレクトリWebContent/WEB-INF/libに手動でコピーし、閉じますWebサービスクライアントを生成する前にEclipseを再度開きます。

0
Barani r