2011-08-16 19 views
0

也許我可以禁用RemoteServiceServlet響應序列化或使用返回ServletOutputStram的方法定義RemoteService接口?我不希望將請求保存在任何數據庫中以便在另一個請求中處理它。如何在RemoteServiceServlet中生成文件並將其發送給用戶?

+0

你究竟想要做什麼?我不明白:( – ZeissS

+0

我希望能夠使用RemoteServiceServlet作爲noraml servlet並將二進制數據寫入ServletOutputStream。 – Damian

+0

我不認爲你可以用GWT RemoteServiceServlet做到這一點,它包裝了整個http東西併爲您進行序列化。請使用單獨的servlet,這是最簡單的。 – ZeissS

回答

0

如果你想提供一個下載到用戶,你可以做這樣的:

  1. 寫另一個servlet簡單地通過ServletResponse的寫出來的文件內容
  2. 確保你有一個二進制標題並在那裏提供文件名。
  3. 在您的客戶端中,製作一個<iframe ..>(此窗口小部件類爲Frame)並將其url指向新的servlet。

由於二進制標題,您的瀏覽器現在會爲用戶提供一個「另存爲」彈出窗口。這應該是全部。

相關問題