将Axis2 Web服务从1.5.6版本更新到1.6.3时出错 [英] Error when updating Axis2 web services from version 1.5.6 to 1.6.3

查看:82
本文介绍了将Axis2 Web服务从1.5.6版本更新到1.6.3时出错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我曾经在Axis2 V1.5.6上运行我的Web服务.但是现在我想在Axis2 V1.6.3上运行它们.在1.5.6版本上,我的服务运行良好,但是当我尝试在1.6.3版本上使用它们时,第一次调用方法时会出现此错误:

I used to run my web services on Axis2 V1.5.6. But now I want to run them on Axis2 V1.6.3. On the 1.5.6 version, my services work well but when I try to use them on the 1.6.3 version, I get this error when I'm calling a method for the first time :

Exception occurred while trying to invoke service method getAllReferentiels

当我浏览tomcat日志时,可以看到引发了异常:

when I glance in my tomcat logs I can see that an exception is raised :

[ERROR] Exception occurred while trying to invoke service method getAllReferentiels
java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:212)
    at org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:121)
    at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
    at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:114)
    at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:181)
    at org.apache.axis2.transport.http.util.RESTUtil.invokeAxisEngine(RESTUtil.java:144)
    at org.apache.axis2.transport.http.util.RESTUtil.processURLRequest(RESTUtil.java:139)
    at org.apache.axis2.transport.http.AxisServlet$RestRequestProcessor.processURLRequest(AxisServlet.java:837)
    at org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:273)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1521)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1478)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.ExceptionInInitializerError
    at com.sun.jersey.core.impl.provider.entity.RenderedImageProvider.<clinit>(RenderedImageProvider.java:69)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:264)
    at com.sun.jersey.core.reflection.ReflectionHelper$3.run(ReflectionHelper.java:289)
    at com.sun.jersey.core.reflection.ReflectionHelper$3.run(ReflectionHelper.java:279)
    at java.security.AccessController.doPrivileged(Native Method)
    at com.sun.jersey.spi.service.ServiceFinder$AbstractLazyIterator.hasNext(ServiceFinder.java:697)
    at com.sun.jersey.spi.service.ServiceFinder.toClassArray(ServiceFinder.java:549)
    at com.sun.jersey.core.spi.component.ProviderServices.getServiceClasses(ProviderServices.java:345)
    at com.sun.jersey.core.spi.component.ProviderServices.getServiceClasses(ProviderServices.java:338)
    at com.sun.jersey.core.spi.component.ProviderServices.getServices(ProviderServices.java:162)
    at com.sun.jersey.core.spi.factory.MessageBodyFactory.initReaders(MessageBodyFactory.java:176)
    at com.sun.jersey.core.spi.factory.MessageBodyFactory.init(MessageBodyFactory.java:162)
    at com.sun.jersey.api.client.Client.init(Client.java:343)
    at com.sun.jersey.api.client.Client.access$000(Client.java:119)
    at com.sun.jersey.api.client.Client$1.f(Client.java:192)
    at com.sun.jersey.api.client.Client$1.f(Client.java:188)
    at com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:193)
    at com.sun.jersey.api.client.Client.<init>(Client.java:188)
    at com.sun.jersey.api.client.Client.<init>(Client.java:160)
    at com.sun.jersey.api.client.Client.create(Client.java:673)
    at com.refComp.dao.utils.Neo4jUtil.getClient(Neo4jUtil.java:44)
    at com.refComp.dao.utils.Neo4jUtil.getNodesWithLabelInJSONArray(Neo4jUtil.java:140)
    at com.refComp.dao.utils.Neo4jUtil.getAllReferentiels(Neo4jUtil.java:411)
    at com.refComp.dao.services.impl.RefCompDAOServiceImpl.getAllReferentiels(RefCompDAOServiceImpl.java:43)
    at com.refComp.dao.services.RefCompDAOServiceUtil.getAllReferentiels(RefCompDAOServiceUtil.java:29)
    at com.refComp.services.impl.RefCompServiceImpl.getXMLReferentielsInString(RefCompServiceImpl.java:314)
    at com.refComp.services.RefCompServiceUtil.getXMLReferentielsInString(RefCompServiceUtil.java:57)
    at com.refComp.services.ws.ReferentielWS.getAllReferentiels(ReferentielWS.java:30)
    ... 36 more
Caused by: java.lang.RuntimeException: java.lang.ClassNotFoundException: com.sun.ws.rs.ext.RuntimeDelegateImpl
    at javax.ws.rs.ext.RuntimeDelegate.findDelegate(RuntimeDelegate.java:122)
    at javax.ws.rs.ext.RuntimeDelegate.getInstance(RuntimeDelegate.java:91)
    at javax.ws.rs.core.MediaType.<clinit>(MediaType.java:44)
    ... 65 more
Caused by: java.lang.ClassNotFoundException: com.sun.ws.rs.ext.RuntimeDelegateImpl
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1305)
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1157)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:264)
    at javax.ws.rs.ext.FactoryFinder.newInstance(FactoryFinder.java:62)
    at javax.ws.rs.ext.FactoryFinder.find(FactoryFinder.java:155)
    at javax.ws.rs.ext.RuntimeDelegate.findDelegate(RuntimeDelegate.java:105)
    ... 67 more

第二次运行该方法时,出现此错误:

When I run the method for the second time, I get this error :

Could not initialize class com.sun.jersey.core.impl.provider.entity.RenderedImageProvider

这些日志:

[ERROR] Could not initialize class com.sun.jersey.core.impl.provider.entity.RenderedImageProvider
java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:212)
    at org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:121)
    at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
    at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:114)
    at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:181)
    at org.apache.axis2.transport.http.util.RESTUtil.invokeAxisEngine(RESTUtil.java:144)
    at org.apache.axis2.transport.http.util.RESTUtil.processURLRequest(RESTUtil.java:139)
    at org.apache.axis2.transport.http.AxisServlet$RestRequestProcessor.processURLRequest(AxisServlet.java:837)
    at org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:273)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1521)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1478)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jersey.core.impl.provider.entity.RenderedImageProvider
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:264)
    at com.sun.jersey.core.reflection.ReflectionHelper$3.run(ReflectionHelper.java:289)
    at com.sun.jersey.core.reflection.ReflectionHelper$3.run(ReflectionHelper.java:279)
    at java.security.AccessController.doPrivileged(Native Method)
    at com.sun.jersey.spi.service.ServiceFinder$AbstractLazyIterator.hasNext(ServiceFinder.java:697)
    at com.sun.jersey.spi.service.ServiceFinder.toClassArray(ServiceFinder.java:549)
    at com.sun.jersey.core.spi.component.ProviderServices.getServiceClasses(ProviderServices.java:345)
    at com.sun.jersey.core.spi.component.ProviderServices.getServiceClasses(ProviderServices.java:338)
    at com.sun.jersey.core.spi.component.ProviderServices.getServices(ProviderServices.java:162)
    at com.sun.jersey.core.spi.factory.MessageBodyFactory.initReaders(MessageBodyFactory.java:176)
    at com.sun.jersey.core.spi.factory.MessageBodyFactory.init(MessageBodyFactory.java:162)
    at com.sun.jersey.api.client.Client.init(Client.java:343)
    at com.sun.jersey.api.client.Client.access$000(Client.java:119)
    at com.sun.jersey.api.client.Client$1.f(Client.java:192)
    at com.sun.jersey.api.client.Client$1.f(Client.java:188)
    at com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:193)
    at com.sun.jersey.api.client.Client.<init>(Client.java:188)
    at com.sun.jersey.api.client.Client.<init>(Client.java:160)
    at com.sun.jersey.api.client.Client.create(Client.java:673)
    at com.refComp.dao.utils.Neo4jUtil.getClient(Neo4jUtil.java:44)
    at com.refComp.dao.utils.Neo4jUtil.getNodesWithLabelInJSONArray(Neo4jUtil.java:140)
    at com.refComp.dao.utils.Neo4jUtil.getAllReferentiels(Neo4jUtil.java:411)
    at com.refComp.dao.services.impl.RefCompDAOServiceImpl.getAllReferentiels(RefCompDAOServiceImpl.java:43)
    at com.refComp.dao.services.RefCompDAOServiceUtil.getAllReferentiels(RefCompDAOServiceUtil.java:29)
    at com.refComp.services.impl.RefCompServiceImpl.getXMLReferentielsInString(RefCompServiceImpl.java:314)
    at com.refComp.services.RefCompServiceUtil.getXMLReferentielsInString(RefCompServiceUtil.java:57)
    at com.refComp.services.ws.ReferentielWS.getAllReferentiels(ReferentielWS.java:30)
    ... 36 more

似乎在两种情况下,错误都是相似的.当我使用com.sun.jersey.api.client.Client.create()时,出现了问题,并且无法初始化com.sun.jersey.core.impl.provider.entity.RenderedImageProvider类.我不知道为什么会发生此错误.也许我的存档.aar不适合1.6.3版本(因为我在两个版本中都使用了相同的版本)我希望有人能帮助我理解..

It seems that in both cases, the error is similar. When I use com.sun.jersey.api.client.Client.create(), something goes wrong and the class com.sun.jersey.core.impl.provider.entity.RenderedImageProvider could not be initialized. I don't know why this error happens. Maybe my archive .aar doesn't fit with the 1.6.3 version (because I use the same for both versions) I hope someone can help me to understand..

谢谢

汤姆

推荐答案

最后,我通过将jersey-bundle-1.19.jar添加到Axis2的lib目录(在webapps中)并重新启动tomcat来进行工作.

Finally I made it working with adding jersey-bundle-1.19.jar into the lib directory of Axis2 (in webapps) and restart the tomcat.

这篇关于将Axis2 Web服务从1.5.6版本更新到1.6.3时出错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆