1

Vista で IE7 を実行している 1 つのクライアントでロードされないアプレットがあります。

エラーは次のとおりです。

java.lang.SecurityException: class "com.arup.web.printing.WebPrintApplet"'s signer information does not match signer information of other classes in the same package.

アプレット コードはWebPrintApplet.jarという名前の jar ファイルにあり、Sun のPdfRenderer.jarに依存しています。両方の jar ファイルに同じ証明書で署名し、Web サーバーの同じフォルダーから jar ファイルをホストしています。

私たちの場合、この問題を引き起こす可能性のあるものについて途方に暮れています。私のアプレットのコードはすべてcom.arup.web.printing.WebPrintAppletパッケージ内にあり、jar ファイル全体が署名されています。

問題とその解決方法に関する手がかりはありますか?

4

3 に答える 3

0

両方の jar ファイルに同じ証明書で署名し、Web サーバーの同じフォルダーから jar ファイルをホストしています。

Jar の 1 つがすでに署名されている場合は、複数のデジタル署名を持つことになります。これにより、エラーが発生する可能性があります。

余談ですが、Java 7 JRE は、JWSを使用して組み込みアプレットのデプロイをサポートする必要があります。これにより、プリンターへのサンドボックス アクセスが可能になります。これがデモです。または JNLPPrintService

于 2012-05-11T20:44:43.683 に答える
0

テスト サイクルが長いと思われる場合は、別の失敗の原因を調査することをお勧めします。このエラーは通常、2 つの異なる jar ファイルの同じパッケージにクラスがある場合に発生します。たとえば、jar ファイルの pdf レンダラーに拡張機能や変更がある場合です。設計上、このような構造は避けるべきだと思います。不可能な場合は、2 つの jar に同じ署名者情報を持たせる必要があります。

現在のプラグインは、さまざまな jar でさまざまな署名者をサポートしていますが、「共有」パッケージを使用してさまざまな jar で多くの署名者を実装する方法が正確にはわかりません。

于 2012-05-12T09:48:50.940 に答える