2

如果尝试为 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"));
4

1 回答 1

1

如果您需要“低级别”的东西(但不像将消息写成字符串那样极端),请查看SAAJ

参考实现在此处,您可以在The Java EE 5 Tutorial中找到入门教程。

于 2013-10-08T19:06:47.847 回答