簡體   English   中英

使用Spring在兩台服務器之間發送大文件的最簡單方法?

[英]Simplest way of sending a large file between two servers with Spring?

我正在構建兩個相互交互的應用程序。 一種是在Windows或Unix機器上運行的Web服務,該服務具有可用於對文件執行各種操作的方法。 另一個是Web服務器,為用戶提供與服務交互的界面。 一個要求是能夠上傳和下載大於100MB的文件(但也可以是任何大小)。 我一直試圖通過將文件的字節放入SOAP請求中來使其工作,就像我使用所有其他服務一樣,但是對於較大的文件,我始終會遇到OutOfMemory錯誤。 我已經嘗試使用啟用了MTOM的Axiom和JAXB嘗試流傳輸字節,但是在Spring MTOM示例( 尤其是這一部分 )看來,您似乎必須深入一些討厭的代碼才能使其正常工作。 使用Spring在兩個服務器之間發送大文件是否有更明顯,更簡單的選擇?

作為附帶的問題,是否有一種簡便的方法可以將用JAXB創建的文件上傳請求對象發送到不必編寫上面MTOM示例中那么多代碼的地方? 像這樣簡單:

StoreFileRequest request = new StoreFileRequest();
request.setDestination(destination);
request.setFileData(dataHandler);
getWebServiceTemplate().marshalSendAndReceive(request)

感謝您的任何想法!

使用apache fileupload甚至Spring網站鏈接到它

<form method="POST" enctype="multipart/form-data" action="fup.cgi">
  File to upload: <input type="file" name="upfile"><br/>
  Notes about the file: <input type="text" name="note"><br/>
  <br/>
  <input type="submit" value="Press"> to upload the file!
</form>

注意:每個瀏覽器都有自己的最大大小:請看下面的第一個鏈接。

http://www.motobit.com/help/scptutl/pa98.htm

http://static.springsource.org/spring/docs/3.0.0.M3/reference/html/ch16s08.html

http://commons.apache.org/proper/commons-fileupload/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM