【问题标题】:What is the best way to send XML data to webservices jaxws将 XML 数据发送到 webservices jaxws 的最佳方式是什么
【发布时间】:2011-05-01 18:18:26
【问题描述】:

将 XML 数据发送到 Web 服务 jax-ws 的最佳方式是什么?

我可以做的一种方法是从客户端将 xml 转换为字符串并将其作为字符串发送到 WebService。

我认为这不是最好的方法/最佳实践。

【问题讨论】:

  • 当 web 服务使用 java 发布并且 .net 正在调用 web 服务时,如果我将它作为字符串或字节 [] 发送,有人可以将我从 .net 发送 xml 到 java 客户端class="comcopy">跨度>

标签: java xml web-services jakarta-ee jax-ws


【解决方案1】:

我可以理解需要这样做这样的 XML 请求 - 响应。虽然对此可能有不同的看法。有时需要由我们处理的应用程序/包定义..

我在此找到的 1 篇好文章 http://java.dzone.com/articles/implementing-jax-ws-web

希望对你有帮助

萨满

【讨论】:

    【解决方案2】:

    Encode --> Escape/ Wrap with CDATA --> 将值设置为字符串 --> 作为参数传递给 webservice wsdl 中定义的 /remote 方法。

    【讨论】:

      【解决方案3】:

      为什么要使用 XML 将是第一个问题。

      我想说看看 google 协议缓冲区,您将能够创建一个与创建 xsd 相同的 .proto 文件,然后您将能够从该 proto 文件生成不同语言的代码,就像您发送的方式到 web 服务只是从 google proto 对象中取出字节数组并发送它。

      【讨论】:

        【解决方案4】:

        最好的方法是使用支持网络服务标准的框架。对于 Java,请尝试 Apache CXFApache Axis 2

        【讨论】:

          【解决方案5】:

          我直接使用序列化的 Java 对象。

          【讨论】:

          • 如何使用 XStream 对其进行序列化,然后将其写入文件,将其添加到 StringBuffer 然后发送。
          • 你为什么要这样做?
          • 要上传的应该是XML文档。
          • 当您序列化对象时,JAXB 将为您创建正确的 wsdl 文件。数据是作为 XML 传输的,所以是一样的。
          猜你喜欢
          • 1970-01-01
          • 2011-04-27
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多