2011-03-06 245 views
6

我想實現它運行在網頁上,並允許Java應用程序:P2P(瀏覽器來瀏覽器)與Java

  • 用戶A(從它的瀏覽器)可以請求文件到用戶B(其瀏覽器打開)。當然用戶A知道用戶B的IP和端口。
  • 用戶B可以從瀏覽器響應此請求。

我有哪些選擇(Java庫,技術,...)?

謝謝!

回答

7

如果你想在瀏覽器中使用Java,唯一的辦法就是applets。

但是一個正常的(不受信任)的小程序:

  • 不能在本地系統
  • 不能聽上訪問文件在任何港口
  • 只能這麼來在服務器上打開的套接字。

這是出於安全原因:小程序不應該能夠損害其運行計算機的用戶。

所以,如果你想做你說的話,你需要用戶信任你,給你更多的權限。對於文件訪問,要走的路是JNLP API(例如,用jnlp文件啓動applet,然後使用javax.jnlp中的API,特別是FileOpenService和FileSaveService。然後用戶需要在選擇文件之前確認訪問一個文件選擇器

這仍然無助於網絡訪問 - 如果您不想代理服務器上的所有內容(這不會是點對點),您的小應用程序需要在那裏有合適的SocketPermissions, 。爲此,您需要簽名您的小程序,並請求用戶的所有權限(沒有更細粒度的方式只給出必要的SocketPermissions,我認爲)您可以在jnlp文件中執行此操作。

+0

非常感謝你! – Arturo 2011-03-06 22:36:10