关于客户端调用MB发布的webservice的问题
我用MB发布了一个webservice,消息定义文件如下
然后根据消息定义文件生成wsdl文件如下
发布过的webservice用自带的测试工具测试正常,能返回结果值
然后我想在java中调用该webservice,我用axis生成了客户端代码,然后调用该webservice,调用代码如下
却报错,报错信息为:
log4j:WARN No appenders could be found for logger (org.apache.axis2.description.AxisService).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" org.apache.axis2.AxisFault: org.apache.axis2.databinding.ADBException: Unexpected subelement response
at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
at client.DataServiceStub.fromOM(DataServiceStub.java:2318)
at client.DataServiceStub.dataService(DataServiceStub.java:197)
at SJGLService.main(SJGLService.java:43)
Caused by: java.lang.Exception: org.apache.axis2.databinding.ADBException: Unexpected subelement response
at client.DataServiceStub$ResE$Factory.parse(DataServiceStub.java:2217)
at client.DataServiceStub.fromOM(DataServiceStub.java:2305)
... 2 more
Caused by: org.apache.axis2.databinding.ADBException: Unexpected subelement response
at client.DataServiceStub$ResE$Factory.parse(DataServiceStub.java:2205)
... 3 more
我通过调试大概了解的出错的问题,调用该webservice后返回的内容解析出错,我在wsdl中定义的返回值为res,但是返回的结果却是response,这点在自带测试器的返回结果中可以看出,
J3202025209111300007
20091112123025
匿名
导致了解析返回结果出错,请问各位大侠这是什么原因呢,我定义的返回值为res,为什么会返回response呢