我一直在使用web start幾年,現在有簽署jar和不是什麼的經驗。我正在嘗試使用web start部署RCP應用程序,儘管實際上我已用相同的證書籤署了所有jar,但我仍然收到此錯誤:'jnlp中的jar資源未由相同證書籤名'jnlp中的jar資源沒有被相同的證書籤名
有沒有人遇到過這個?如果是這樣,關於如何解決的任何想法?
我一直在使用web start幾年,現在有簽署jar和不是什麼的經驗。我正在嘗試使用web start部署RCP應用程序,儘管實際上我已用相同的證書籤署了所有jar,但我仍然收到此錯誤:'jnlp中的jar資源未由相同證書籤名'jnlp中的jar資源沒有被相同的證書籤名
有沒有人遇到過這個?如果是這樣,關於如何解決的任何想法?
這可能是您用作庫的已簽名jar的陳舊清單條目。我通過webstart通過jogl遇到了這個問題。試試這個:
解壓所有罐子,清除所有META-INF目錄,罐子並重新簽名。
我發現JNLP/Webstart不喜歡多個簽名/通過jarsigner.exe爲給定的JAR簽名。如果像BouncyCastle這樣的JAR再次與貴公司的證書一起簽名,目測檢查使我相信新的證書和簽名在JAR中正確執行。但是JNLP可能只是讀取META-INF中的第一個(Alphabetical?)簽名,因此抱怨它與您的其他JAR(每個JAR上只有一個Corporate,簽名)不匹配。
參見常見問題解答的一個解釋:How do I use multiple JAR files signed by different certificates?
合適的解決方案。
我和Matthew所描述的BouncyCastle JAR具有完全相同的體驗。然而,我發現JRE版本1.6.0_14和更高版本會很樂意接受帶有多個簽名的JAR(就像我期望的那樣)。因此,我不需要使用上述的JNLP'組件擴展機制'。
PS 在1.6.0_14發行說明中未找到任何明顯的對此修復的引用。但是,我已經驗證了多個簽名的JAR適用於所有更高版本(至少14 - 17 + 24)。
在我的項目中,發生的情況是負載平衡器池中有幾個實例,有一些實例使用舊版本代碼,一些使用新版本。因此,有證書沒有簽署相同的證書...
這使得總體感,謝謝! – javamonkey79 2009-01-10 18:42:18
我遇到了同樣的問題。我沒有使用擴展名,而是編寫了一個小腳本,在自己簽名之前從第三方jar中刪除簽名文件(例如META-INF/* .RSA,*。DSA和* .SF)。 – qualidafial 2009-06-25 14:37:31