2010-08-30 40 views
1

的大小为了得到一个附件,我有以下代码中的端点:春WS:如何访问到AxiomAttachment

@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(); 

但附件实现AxiomAttachment(我使用AxiomSoapMessageFactory)和根据这个类“Axiom不支持获取附件的大小”。

我怎样才能得到附件的大小?

我尝试使用这个以便能够发送大文件(超过10个月)作为附件防止outofMemory(任何更好的主意都将被欣赏 - 我已经尝试了mtom spring样本,但它即使通过指定AxiomSoapMessageFactory也不能处理繁重的文件(outOfMemory)。

即时通信开放给任何更好的解决方案(弹簧WS MTOM样本不工作..)为处理繁重的文件与春天WS

+0

在Spring-WS论坛中,您几乎肯定会对此做出更好的回应:http://forum.springsource.org/forumdisplay.php?f=39 – skaffman 2010-08-30 09:00:37

回答

0

这不是真的有可能你之前得到一个文件的大小将它从DataHandler中保存下来。想想看。 MTOM是一种将二进制文件传输到Web服务的技术。你所问的问题类似于说“这个电话通话持续多久?”在挂断电话之前,你无法确定。