如果尝试为 Java 中的 SOAP Web 服务(在 WSDL 中定义)实现客户端和服务器端组件,但不希望为客户端和服务器存根使用基于 WSDL/JAXB 的代码生成,是否有任何资源/库我应该研究?
作为记录,我试图避免wsimport
生成存根的原因是两者都wsimport
无法xjc
为我必须使用的模式文件正确生成 Java 代码——这些文件数量众多且相当复杂——尽管使用了情节编译,但我仍然遇到了可能的问题可能是 JAXB 代码生成逻辑中的错误(例如,请参阅此处和此处),总的来说,当涉及到复杂的模式时,我的印象是这项技术不是很可靠。
那么,我应该研究哪些资源或库来通过直接在 HTTP 连接上编写和读取 XML 内容来帮助构建 SOAP 服务?目前我只是在write
呼吁java.net.URLConnection
:
URLConnection connection = url.openConnection();
connection.setDoOutput(true); // Triggers POST.
connection.setRequestProperty("Accept" , "text/xml, multipart/related");
connection.setRequestProperty("Content-Type" , "text/xml; charset=utf-8");
connection.setRequestProperty("Host" , url.getHost());
connection.setRequestProperty("Proxy-Connection", "keep-alive");
connection.setRequestProperty("Content-Length" , String.valueOf(postContent.length()));
OutputStream output = connection.getOutputStream();
output.write(postContent.getBytes("UTF-8"));