【发布时间】:2018-06-07 16:00:46
【问题描述】:
我正在实现一个 SOAP Web 服务,它正在处理一个 cURL 调用。我实现了以下this tutorial。该服务正在使用以下命令:
curl --header "content-type: text/xml" -d @request.xml http://localhost:8080/ws
当然,此操作必须不受命令提示符的影响,并且可以在必要时调用,因此我想将此服务与例如调用方法时的操作相关联。
目前是从网上找到的
String url = "http://localhost:8080/ws";
URL obj = new URL(url);
HttpURLConnection conn = (HttpURLConnection) obj.openConnection();
conn.setRequestProperty("Content-Type", "text/xml");
conn.setDoOutput(true);
conn.setRequestMethod("POST");
我认为它应该是一个 POST 方法,但是如何添加“request.xml”和“--header”?什么命令将完成 cURL 调用?还是我这样做完全错了,而且还有很长的路要走,有没有更简单的方法?
PS:我已经运行了一个 Web 服务,并且正在使用 Eclipse Oxygen。
【问题讨论】:
-
有很多方法可以做到这一点。但“最佳实践”是:1)获取 SOAP 服务的“WSDL”,2)使用 IDE(如 Eclipse 或 NetBeans)生成“Web 服务客户端”,然后 3)使用自动生成的代码制作 Web服务电话。这是一个示例:help.eclipse.org/oxygen/…
-
我有一个 wsdl 文件和服务正在运行,我正在使用 Eclipse Oxygen
-
很好 - 听起来您已经完成了 80%(或更多)的工作。根据上面的链接,只需使用 Eclipse/JEE 版本生成“自上而下的 Web 服务客户端项目”。本教程也可能有所帮助:ibm.com/developerworks/webservices/tutorials/ws-jse/index.html
标签: java spring spring-boot curl soap