我已經創建了一個GWT應用程序,現在想要在GAE外部署它。我希望在GAE之外部署的原因是GAE的Sandbox安全功能,它不允許我將文件寫入我的系統。我將數據以本體(。owl文件)的形式存儲在我的'/ war/WEB_INF'下,我希望最終用戶能夠通過服務器修改(寫入/保存)此文件。將文件寫入我的GWT - Google App Engine(GAE)應用程序中的系統
我明白,GAE不會讓我做這件事,但有一個谷歌支付服務(例如谷歌應用程序),將允許託管GWT應用程序,這將允許將文件寫入到系統?例如,像GAE的附加組件?
如果沒有,你會推薦什麼解決方案來在網絡上託管一個GWT應用程序(這會讓我將文件寫入WEB-INF文件夾)?
編輯:我解決了這個問題,將GWT項目部署爲.war文件並託管在TomCat中。
我實際上使用blobstore Java API將文件存儲在數據庫中。你可以把一個基本的servlet映射到像/ fileServlet/*之類的東西,然後用路徑和文件名來調用它,你可以通過這些路徑和文件名來識別一個特定的blob(之前你用一些關聯的「路徑」和「文件名」保存的)它會像你自己的文件系統一樣行事。 –
嗯,所以我實際上甚至不需要在WEB-INF下存儲數據(我的本體)呢?安全性方面,使用blobstore會比在我的文件系統下對本體進行分類的可信度低嗎? – Rhubarb
嗯,我不確定這是否允許修改或覆蓋文件:'Blob創建後無法修改,儘管它們可以被刪除。「另外,我的本體大於32mb,但很明顯: 「應用程序可以使用API調用一次讀取Blobstore值,其大小可以達到API返回值的最大值。」 – Rhubarb