Java SpringWS:如何访问AXIOM附件的大小

Java SpringWS:如何访问AXIOM附件的大小,java,spring-ws,Java,Spring Ws,为了获得附件,我在端点中有以下代码: @PayloadRoot(localPart = REQUEST_ELEMENT, namespace = MODELES_V1_0_URI) @ResponsePayload public Source saveFile(MessageContext argo) throws Exception { (AxiomSoapMessage)MessageContextHolder.getMessageContext().getRequest(); Axi

为了获得附件,我在端点中有以下代码:

@PayloadRoot(localPart = REQUEST_ELEMENT, namespace = MODELES_V1_0_URI)
@ResponsePayload
public Source saveFile(MessageContext argo) throws Exception {

 (AxiomSoapMessage)MessageContextHolder.getMessageContext().getRequest();
 AxiomSoapMessage request = (AxiomSoapMessage)argo.getRequest();
 Attachment attachement= request.getAttachments().next();
但是附件实现了Axiom附件(我使用的是AxiomSoapMessageFactory),并且根据这个类“Axiom不支持获取附件的大小”

如何获得附件的尺寸?

Iv尝试使用此选项,以便能够将大文件(超过10个月)作为附件发送,以防止outofMemory(如果有更好的想法,将不胜感激-我已经尝试了mtom spring示例,但即使指定AxiomSoapMessageFactory,它也无法处理重文件(outofMemory)


我愿意使用任何更好的解决方案(spring ws mtom示例不起作用..)来使用spring ws处理繁重的文件

在从数据处理程序保存文件之前,实际上不可能获得文件的大小。想想看。MTOM是一种将二进制文件流式传输到web服务的技术。你问的问题类似于说“这个电话会持续多久?”在你挂断电话之前,你无法确定

您几乎肯定会在Spring WS论坛上得到更好的响应: