我們正在開發一個使用Java Web Start的應用程序。如何強制Java Web Start運行自簽名的JNLP?
「位置」(http://<IP>:port
)已添加到例外站點列表。我會認爲這本身就足以使JNLP運行。
不過,我也做下的 「高級」 以下內容:
我只有一個Java版本 - 這就是Java 1.8.0_91 32位。
我還需要做些什麼來使我的JNLP運行?
我們正在開發一個使用Java Web Start的應用程序。如何強制Java Web Start運行自簽名的JNLP?
「位置」(http://<IP>:port
)已添加到例外站點列表。我會認爲這本身就足以使JNLP運行。
不過,我也做下的 「高級」 以下內容:
我只有一個Java版本 - 這就是Java 1.8.0_91 32位。
我還需要做些什麼來使我的JNLP運行?
問題是清單中缺少權限屬性,因此在Java 1.8中未經警告就被阻止。如果運行Java 1.7,則會出現此警告。
Java安全性是一個有趣的小事情,必須摔跤。
將您的JavaWS應用程序的網站添加到Java安全例外列表中。你說你已經這麼做了,但是你是否還標記了你的JNLP文件以指明它來自哪個站點?
從本質上講,jnlp文件只是一個XML文件,除非它說明它來自哪裏,否則java可能無法確定它是否來自受信任的站點。
在JNLP中是否有類似這樣的標籤?
<jnlp href="someWebstartApp.jnlp" spec="1.0+" codebase="http://myserver.com/" xmlns:jfx="http://javafx.com">
具體而言,在href(名稱爲在基本代碼jnlp文件)和基本代碼(其中jnlp文件和罐子可以找到)的位。
或者,你可以嘗試直接在命令行中調用的javaws:
javaws http:/myserver.com/someWebstartApp.jnlp
這將讓Java的搶JNLP文件本身,而不是瀏覽器的啓動過程可能無法告訴Java的哪個網址jnlp來自。
添加異常應該足夠了。我不認爲你需要那裏的港口。你怎麼稱呼javaws? 'javaws http:// ip/xxx.jnlp'? – assylias
您是否檢查過該例外已添加到列表中(在%USERPROFILE%\ AppData \ LocalLow \ Sun \ Java \ Deployment \ security \ exception.sites中)?你是否在'http:// xxx'或文件:// xxx或映射的驅動器上調用javaws? – assylias