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

问题描述 投票:7回答:4

我正在尝试创建一个简单的“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)

有人可以帮忙吗?我在互联网上搜索,发现有一个文件httpcore-xx.jar必须放在apache tomcat lib目录中。我尝试过,但它没有用。我正在使用ubuntu 14.04 LTS和eclipse。我还尝试清理我的项目并再次构建。它没用。我面临的是页面正在加载到Web浏览器上,但是当我点击服务时,会出现上一个错误。我试图实现的教程是http://codeoncloud.blogspot.gr/2012/12/create-java-web-service-in-eclipse_3982.html

servlets axis2 noclassdeffounderror
4个回答
27
投票

我有同样的问题,并通过将qazxsw poi从qazxsw poi复制到qazxsw poi成功解决了它。


3
投票

我正在尝试创建一个简单的Web服务(配置:动态Web模块2.5),使用: - Tomcat 8.0和 - Axis2 1.7.4(axis2-1.7.4-war)。

我收到以下错误:

xmlschema-core-*.jar

第一个问题是[WARN]:

“[WARN] Web应用程序使用org.apache.axis2.transport.http.AxisAdminServlet;请更新web.xml以使用org.apache.axis2.webapp.AxisAdminServlet”

解决方案:我解决了根据需要更新web.xml的问题。


第二个问题是:

  • 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:servlet jsp的Servlet.service()抛出异常org.apache.jasper.JasperException:绝对uri:axis2-*/lib/无法解析web.xml或使用此应用程序部署的jar文件(...)

解:

我下载了这些罐子: - taglibs-standard-impl-1.2.5.jar和 - taglibs-standard-spec-1.2.5.jar

来自my_project_root_directory/WebContent/WEB-INF/lib/

所以我不得不将它们粘贴在WebContent / WEB-INF / lib中。

这就是所有人。我希望它有所帮助。


0
投票

IT也为我工作。 axis2-1.7和axis2-1.6都适用于我,只是将xml-core复制到web / lib文件夹并构建路径并且它工作正常。


0
投票

这对我有用:

[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) (...)

原因:Axis2 1.7.x使用的XmlSchema 2.2.x与Axis2 1.6.x不兼容,Eclipse不会将新版本的XmlSchema复制到Web应用程序。

解决方案:手动将xmlschema-core-2.2.1.jar从$ AXIS2_HOME / lib复制到Eclipse项目目录WebContent / WEB-INF / lib,关闭并重新打开eclipse,然后再生成Web服务客户端。

© www.soinside.com 2019 - 2024. All rights reserved.