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

此平台上的XML消息可以使用多长时间?

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

有帮助吗?

解决方案

对平台的限制不太了解,但总的来说,没有硬性限制。将Axis与标准SOAP堆栈一起使用将获取SOAP信封并创建它的内存表示(dom或dom),使您的堆大小成为一个限制。 在使用非常大的XML的情况下,更好的方法是使用STaX,这是一个XML流解析器库。这将删除您可能使用或创建的XML大小的所有限制。

其他提示

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

虽然理论上可以为Soap处理创建流/嵌套接口,但实现起来并非易事,目前没有堆栈可以做到这一点。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top