我有一个本地 Web 服务,我可以使用 JAVA 客户端调用其方法。
是否可以使用 URL 访问其方法? 我可以使用以下 URL 访问 wsdl XML:
http://localhost:9999/ws/hello?wsdl
我想调用这样的方法:
http://localhost:9999/ws/hello/getHelloWorldAsString?name=test
但我收到错误“本地主机未发送任何数据”。
有办法做到这一点吗?
最佳答案
据我所知,Jax-ws 使用 POST 来接收调用。您必须构建一个 XML 请求才能 POST 到您的 URL。像这样的事情:
POST /ws/hello HTTP/1.1
SOAPAction: ""
Accept: text/xml, multipart/related, text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Content-Type: text/xml; charset=utf-8
User-Agent: Java/1.6.0_13
Host: localhost:9999
Connection: keep-alive
Content-Length: 224
<?xml version="1.0" ?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:getHelloWorldAsString xmlns:ns2="http://ws.mkyong.com/">
<arg0>test</arg0>
</ns2:getHelloWorldAsString>
</S:Body>
</S:Envelope>
关于java - 如何从 URL 调用 JAX-WS 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38249734/