簡體   English   中英

使用Glassfish 4.1和Java7簽名的Java Web Start應用程序

[英]Signed Java web start application with Glassfish 4.1 and Java7

我試圖在本地運行帶有GlassFish 4.1,JDK 1.7 update 51的Web Start應用程序,並且遇到“應用程序被安全設置阻止”消息。

這是我嘗試使其工作的方法:
1.在Java控制面板的“例外站點列表”中添加了http://hostname.localdomain.com:8080 還嘗試了http://hostname.localdomain.com:8080/___JWSappclient/http://hostname.localdomain.com:8080/clientName.jnlp


2.從Glassfish的keystore.jks中導出s1as密鑰,並將其導入到JRE cacerts中: $ keytool -exportcert -keystore keystore.jks -alias s1as -file server.csr $ keytool -importcert -keystore jre/lib/security/cacerts -alias s1as -file server.csr

我可以看到用s1as鍵簽名的jar,但是javaws仍然抱怨。 JNLP由Glassfish使用我們sun-application-client.xml中的設置自動生成。

感謝有關如何解決此錯誤的任何幫助。 我意識到如果我在客戶端使用JRE7 update 21可以正常工作,但是我想稍后再嘗試使用Java 8,所以不能堅持使用Java7。如果有關系,我正在使用Ubuntu。

我已經復制了您的問題,並且有一種解決方法。

看來問題與glassfish 4.1自動生成的jnlp文件和新的Java安全性jdk 1.7 u 25或更高版本有關。

如果安裝Java 1.7.0_21或更早版本,則Java Web Start應用程序將通過使用較早發行版中的javaws來啟動。

我使用netbeans 8.0.2,java 1.8_31和GF 4.1簡化了此問題。 我創建了Java EE“企業應用程序客戶端”,未更改任何代碼。 部署它,您將無法從glassfish控制台或7.1 u25或更高版本的任何javaws中運行它。 但是,如果從命令行使用javaws 7.1 u21或更早版本,它將啟動。 有趣的是,該應用程序在Java 1.8 u31環境中運行。

一定是玻璃魚中的蟲子。

暫無
暫無

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

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