3

何年も前に、単純なファイル アップロード タスクを実行する Java Web Start アプリケーションを NetBeans で作成しました。何年もの間、私はそれを自己署名アプレットとして持っていましたが、ついに諦めて署名証明書を購入しました。これですべての署名が完了しましたが、新たな問題に直面しています。

メイン クラスのパブリック メソッドの 1 つが JavaScript によって呼び出されます。しかし、それは機能しなくなったようです。Firebug でこのメソッドを手動で呼び出そうとすると、次のようなメッセージが返されます。

Error: Liveconnect call for Applet ID 8 is not allowed in this JVM instance.

更新: Chrome でこれを試したときに表示されるエラーのバージョンは次のとおりです。

Error calling method on NPObject.

すでに最新バージョンの Java プラグイン (7u51) を使用しています。このアプレットは以前は機能していましたが、現在は機能していないようです。コードに何か特別なものを追加する必要がありますか? または、NetBeans によってコンパイルされる方法で設定を変更しますか?

4

1 に答える 1

7

私はそれを考え出した; マニフェスト ファイルを更新する必要があると述べたフォーラムの投稿をいくつか見つけました。どうやら Oracle は最近 Liveconnect の動作方法を変更したため、アプレットを呼び出すことができるサブドメインを許可することを明示する必要があります。

その情報はここCaller-Allowable-Codebaseにあり、基本的にマニフェスト ファイルにディレクティブを追加する必要があります。幸いなことに、ワイルドカードに設定できます。これは、私が最終的に行ったことです。どうやら、マニフェストファイルでそれと一緒に設定することも想定されており、特にtrueApplication-Nameを含めることは想定されていません。Trusted-Libraryなぜ、またはそれが何をするのかはよくわかりませんが、マニフェスト ファイルを調整することができ、すべてが再び機能するようです!

于 2014-03-04T15:02:00.417 に答える