在WebService上出糗了

今天犯了一个新的低级错误,对于WebService的理解非常差啊。

用CXF开发的WebService服务端,发布新版本之后,客户端调用方反映情况说所有接口都无法调用了。用SOAPUI来测试的时候发现没有问题啊,拿到客户端调用的错误情况,如下:
---------------------------------------------------------------------------
2014-3-13 9:34:17 weblogic.wsee.jaxws.spi.WLSServiceDelegate addWsdlDefinitionFeature
严重: Failed to create WsdlDefinitionFeature for wsdl location: http://***.**.***.***:****/*****/bpmservice/taskQueryProcessWS?wsdl, error: com.sun.xml.ws.wsdl.parser.InaccessibleWSDLException, message: 2 counts of InaccessibleWSDLException.

com.sun.xml.ws.streaming.XMLStreamReaderException: unexpected XML tag. expected: {http://bpm.ws.bmsoft.com.cn/}getOwnedProcessListResponse but found: {http://ws.obpm.bmsoft.com.cn/}getOwnedProcessListResponse
at com.sun.xml.ws.streaming.XMLStreamReaderUtil.verifyTag(XMLStreamReaderUtil.java:214)
at com.sun.xml.ws.streaming.XMLStreamReaderUtil.verifyTag(XMLStreamReaderUtil.java:222)
at com.sun.xml.ws.client.sei.ResponseBuilder$DocLit.readResponse(ResponseBuilder.java:531)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:127)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:95)
at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:136)
---------------------------------------------------------------------------
一看完,我就知道问题在哪了,WebService的命名空间变了,根源在于包结构变了。昨天重构代码的时候调整了包结构,将WebService的包名从cn.com.bmsoft.ws.bpm改成了cn.com.bmsoft.obpm.ws,这样导致命名空间从http://bpm.ws.bmsoft.com.cn变成了http://ws.obpm.bmsoft.com.cn,从而使得客户端代码无法成功调用。

细节无处不在啊!!!

你可能感兴趣的:(webservice)