【问题标题】:JAXB or StAX Message LimitsJAXB 或 StAX 消息限制
【发布时间】:2008-10-27 07:25:14
【问题描述】:

我目前正在使用 Axis 2 实现的 Bea Websphere 6.1 环境中开发 WebService,我正在尝试遵守 Web 服务的当前标准(JAXB、JAXWS、StAX...)。

XML 消息在这个平台上可以存在多长时间?

我已经四处搜索,但没有找到与此主题相关的任何内容。

【问题讨论】:

    标签: java jaxb jax-ws stax


    【解决方案1】:

    不太了解您所在平台的限制,但总的来说,没有硬性限制。将 Axis 与标准 SOAP 堆栈一起使用将采用 SOAP 信封并在内存中创建它的表示形式(dom 或类似 dom),从而限制了堆大小。 如果使用非常大的 XML,更好的方法是使用 STaX,它是一个 XML 流解析器库。这将消除您可能使用或创建的 XML 大小的所有限制。

    【讨论】:

      【解决方案2】:

      是的,由于 Jax-ws 和 SOAP 的工作方式,整个有效负载被绑定:要么绑定到树(更高的内存使用)或 POJO/bean(更低的内存使用)。无论哪种方式,内存使用量都与消息大小成正比。

      虽然理论上可以为 Soap 处理创建流式传输/分块接口,但实现起来并非易事,目前还没有堆栈这样做。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-10-27
        • 2010-11-05
        • 2014-01-10
        • 1970-01-01
        • 1970-01-01
        • 2015-05-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多