Jboss SpringMVC调用WebService报错:setProperty must be overridden by all subclasses of SOAPMessage

来源:互联网 发布:java往word中写入文本 编辑:程序博客网 时间:2024/05/22 18:14

环境:

系统版本: Linux xxxxx 2.6.32-358.el6.x86_64 #1 SMP Tue Jan 29 11:47:41 EST 2013 x86_64 x86_64 x86_64 GNU/Linux

JDK版本:  java version "1.6.0_26"

        Java(TM) SE Runtime Environment (build 1.6.0_26-b03)

        Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)

Jboss版本:Jboss-4.2.2.GA

项目:     Spring MVC

报错代码: SpringMVC做webservice客户端,去请求WebService接口时报错,具体代码如下:

public String callInterface(String x1,String x2,String x3,String x4,String x5){

String urlStr = "";

try {

Properties prop = new Properties();    

System.out.println("class路径,根据此路径以及properties文件实际路径判断后面的路径写法:"+getClass().getClassLoader());

InputStream inStream = getClass().getClassLoader().getResourceAsStream("../jdbc.properties");

prop.load(inStream);    

urlStr = prop.getProperty("webservice.url");    

} catch (IOException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

}

System.out.println("webService URL="+urlStr);

String result = "";

try {

URL url = new URL(urlStr);

XXXService_Service csFactory = new XXXService_Service(url);

XXXService cs = csFactory.geXXXService();

        //调用操作方法并获取返回值

result = cs.XXX(x1, x2, x3, x4,x5);

} catch (Exception e) {

e.printStackTrace();

}

return result;

}

报错信息: 具体可见最后:

14:12:34,100 ERROR [STDERR] Caused by: java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage

14:12:34,100 ERROR [STDERR] at javax.xml.soap.SOAPMessage.setProperty(SOAPMessage.java:445)

14:12:34,100 ERROR [STDERR] at org.jboss.ws.core.soap.SOAPMessageImpl.<init>(SOAPMessageImpl.java:67)

14:12:34,100 ERROR [STDERR] at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:161)

14:12:34,100 ERROR [STDERR] at org.jboss.ws.core.CommonSOAP11Binding.createMessage(CommonSOAP11Binding.java:59)

14:12:34,100 ERROR [STDERR] at org.jboss.ws.core.CommonSOAPBinding.bindRequestMessage(CommonSOAPBinding.java:156)

14:12:34,100 ERROR [STDERR] at org.jboss.ws.core.CommonClient.invoke(CommonClient.java:289)

14:12:34,100 ERROR [STDERR] at org.jboss.ws.core.jaxws.client.ClientImpl.invoke(ClientImpl.java:243)

14:12:34,100 ERROR [STDERR] ... 43 more

解决方法:

复制如下5个JAR包到/usr/java/aniam/jboss-4.2.2.GA/lib/endorsed/目录下

jbossws-native-jaxrpc.jar

jbossws-native-jaxws.jar

jbossws-native-jaxws-ext.jar

jbossws-native-saaj.jar

jaxb-api.jar

复制完成后:


重启后就可以调用webservice接口了


报错详情:

14:12:34,095 ERROR [STDERR] javax.xml.ws.WebServiceException: java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage
14:12:34,096 ERROR [STDERR] at org.jboss.ws.core.jaxws.client.ClientImpl.handleRemoteException(ClientImpl.java:317)
14:12:34,096 ERROR [STDERR] at org.jboss.ws.core.jaxws.client.ClientImpl.invoke(ClientImpl.java:255)
14:12:34,096 ERROR [STDERR] at org.jboss.ws.core.jaxws.client.ClientProxy.invoke(ClientProxy.java:164)
14:12:34,096 ERROR [STDERR] at org.jboss.ws.core.jaxws.client.ClientProxy.invoke(ClientProxy.java:150)
14:12:34,096 ERROR [STDERR] at $Proxy77.getBoardPortStatus(Unknown Source)
14:12:34,096 ERROR [STDERR] at com.ccs.controller.AniamInterfaceController.callInterface(AniamInterfaceController.java:366)
14:12:34,096 ERROR [STDERR] at com.ccs.controller.AniamInterfaceController.getBoardStatus(AniamInterfaceController.java:217)
14:12:34,096 ERROR [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
14:12:34,096 ERROR [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
14:12:34,096 ERROR [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
14:12:34,097 ERROR [STDERR] at java.lang.reflect.Method.invoke(Method.java:597)
14:12:34,097 ERROR [STDERR] at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:219)
14:12:34,097 ERROR [STDERR] at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)
14:12:34,097 ERROR [STDERR] at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:100)
14:12:34,097 ERROR [STDERR] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:604)
14:12:34,097 ERROR [STDERR] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:565)
14:12:34,097 ERROR [STDERR] at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80)
14:12:34,097 ERROR [STDERR] at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)
14:12:34,097 ERROR [STDERR] at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
14:12:34,097 ERROR [STDERR] at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
14:12:34,097 ERROR [STDERR] at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:789)
14:12:34,098 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
14:12:34,098 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
14:12:34,098 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
14:12:34,098 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
14:12:34,098 ERROR [STDERR] at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
14:12:34,098 ERROR [STDERR] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
14:12:34,098 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
14:12:34,098 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
14:12:34,098 ERROR [STDERR] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
14:12:34,098 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
14:12:34,098 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
14:12:34,098 ERROR [STDERR] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
14:12:34,098 ERROR [STDERR] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
14:12:34,099 ERROR [STDERR] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
14:12:34,099 ERROR [STDERR] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
14:12:34,099 ERROR [STDERR] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
14:12:34,099 ERROR [STDERR] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
14:12:34,099 ERROR [STDERR] at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
14:12:34,099 ERROR [STDERR] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
14:12:34,099 ERROR [STDERR] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
14:12:34,099 ERROR [STDERR] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
14:12:34,099 ERROR [STDERR] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
14:12:34,099 ERROR [STDERR] at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
14:12:34,099 ERROR [STDERR] at java.lang.Thread.run(Thread.java:662)
14:12:34,100 ERROR [STDERR] Caused by: java.lang.UnsupportedOperationException: setProperty must be overridden by all subclasses of SOAPMessage
14:12:34,100 ERROR [STDERR] at javax.xml.soap.SOAPMessage.setProperty(SOAPMessage.java:445)
14:12:34,100 ERROR [STDERR] at org.jboss.ws.core.soap.SOAPMessageImpl.<init>(SOAPMessageImpl.java:67)
14:12:34,100 ERROR [STDERR] at org.jboss.ws.core.soap.MessageFactoryImpl.createMessage(MessageFactoryImpl.java:161)
14:12:34,100 ERROR [STDERR] at org.jboss.ws.core.CommonSOAP11Binding.createMessage(CommonSOAP11Binding.java:59)
14:12:34,100 ERROR [STDERR] at org.jboss.ws.core.CommonSOAPBinding.bindRequestMessage(CommonSOAPBinding.java:156)
14:12:34,100 ERROR [STDERR] at org.jboss.ws.core.CommonClient.invoke(CommonClient.java:289)
14:12:34,100 ERROR [STDERR] at org.jboss.ws.core.jaxws.client.ClientImpl.invoke(ClientImpl.java:243)
14:12:34,100 ERROR [STDERR] ... 43 more
14:12:34,113 ERROR [[AniamInterfaceForApp]] Servlet.service() for servlet AniamInterfaceForApp threw exception
java.lang.ArrayIndexOutOfBoundsException: 1
at com.ccs.controller.AniamInterfaceController.getBoardStatus(AniamInterfaceController.java:222)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:219)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:100)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:604)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:565)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:789)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
at java.lang.Thread.run(Thread.java:662)

阅读全文
0 0
原创粉丝点击