我们已经创建了一个 PHP Soap 网络服务,并且在从 PHP 客户端调用时可以完美运行。 但是当我们尝试从 Java 调用它时,它似乎返回 null。 我们已经使用了 SoapUI,一切似乎都很好...... 使用 Wireshark 抓取发送给客户端的数据,数据似乎没问题。
我们尝试更改命名空间并抛出异常:
javax.xml.ws.WebServiceException: Unexpected response element {http://[URLhere]//ws/sWSDL.php}getServiceXMLDetailsResponse expected: {subscriptionWS}getServiceXMLDetailsResponse
at com.sun.xml.internal.ws.client.sei.ResponseBuilder$RpcLit.readResponse(ResponseBuilder.java:603)
at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:110)
at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:78)
at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:107)
at $Proxy21.getServiceXMLDetails(Unknown Source)
at reynardito.ReyNardito.main(ReyNardito.java:28)
并且使用 Wireshark 数据包包含正确的信息,所以它似乎是某种解析错误...
有人解决过这个问题吗?
最佳答案
你在用nusoap吗?
如果是这样...更改 url {http://[URLhere]//ws/sWSDL.php?wsdl} 而不是 {http://[URLhere]//ws/sWSDL.php}
关于java - 从 Java 或 .Net 调用时 PHP WebService 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5918134/