1

私は現在、Java AWS SDK を使用して S3 バケットからいくつかのファイルをダウンロードする Java アプレット (実際には JApplet) を作成しています。アプレットは、Eclipse のアプレット ビューアーで実行すると非常にうまく機能しますが、ブラウザーで実行しようとすると問題が発生します。

私は確かに同様の問題に関するいくつかのSOの質問を読みましたが、提供された回答に従った後でも、この問題の解決策はまだ見つかりません.

最初に、少なくともテストのために、すべての依存関係が含まれた実行可能な jar をエクスポートしようとしました。しかし、テストしたすべてのブラウザー (Firefox、Chrome、および IE) で次のエラー メッセージが表示されました。

access denied ("java.util.propertyPermission" "com.amazonaws.sdk.disableCertChecking" "read")

いくつかの検索の後、これは私のjarが署名されていないことが原因である可能性があることがわかりました. そのため、自己署名し、同じエラーを取得するためだけに再試行しました。私は、それらを単一の瓶に詰めてすべてに署名するのではなく、別々の瓶で作業することにしましたが、役に立ちませんでした.

AwsCredentials.properties ファイルは現在のもので、jar と同じディレクトリにありますが、それが問題の原因であるとは思いません。

アプレットを埋め込むために使用している HTML のコード:

<applet code="path.to.class.Packer" 
        archive="signed-packer.jar" 
        width="400px" height="200px">       
</applet>

さらに詳しい情報が必要な場合はお知らせください。この問題について何か助けていただければ幸いです。ありがとうございました。

4

1 に答える 1

1

うん。ブラウザ サンドボックスで実行されているアプレットは、任意の Java システム プロパティを読み取ることができません。これはセキュリティ上の制限です。Java が署名証明書を受け入れれば、アプレット JAR ファイルに署名するだけで十分です。(自己署名証明書を Java インストールのキーストアに追加しましたか?)

関連する質問:自己署名アプレットが完全な許可を得られない

于 2012-12-30T22:40:20.783 に答える