1

私は、ファイルの読み取りと書き込みを行うjarファイルをアプレットに変換する過程にありました。読み取りおよび書き込み機能を追加するまで、正しく表示されます。次に、Firefoxはブラックボックスを表示します(エラーポップアップは表示されません)。

私は多くの調査を行いましたが、それを機能させるには、アプレットに署名する必要があり、ユーザーに許可を求めますが、アプレットにファイルを書き込ませることができないことも読みました。サーバー側である必要があります。

だから私の質問は、サーバーサイドスクリプトなしでアプレットにファイルの読み取りと書き込みをさせることができるかということです。もしそうなら、どのようにアプレットに署名するのですか(私はいくつかのチュートリアルを読みましたが、これはちょっと新しいです)。

4

2 に答える 2

2

署名されたアプレットは、ローカル マシン上のファイルを読み書きできます。

使用できる証明書には 2 つのタイプがあります。1 つ目は、JDK に付属のアプリである keytool を使用して作成する証明書です。2 番目のオプションは、Verisign などの認証局からの証明書を使用してアプレットに署名することです。

違いは、自作の証明書は、証明書が信頼されていないことを示す警告メッセージをクライアントに表示することです。これは単なる警告ですが、ユーザーを怖がらせる可能性があります。実際の認証局からの証明書の欠点は、費用がかかることです。

証明書を生成するには、keytool -genkey を使用します

次に署名を行う方法は、アプレットの作成方法によって異なります。

たとえば、Ant を使用する場合、アプレットに署名する signjar タスクがあります。

于 2011-03-20T07:52:27.827 に答える
2

私の質問は、サーバー側のスクリプトを作成せずに、アプレットにファイルの読み取りと書き込みをさせることができるかということです。

もちろん、1.6.0_10+(1) JRE (「次世代」プラグイン) では、Jar にデジタル署名する必要さえありません。

次世代でJava Web Startを使用してデプロイされたアプレット。プラグインはJNLP API サービスにアクセスできます。API の FileContents オブジェクトは、基本的な I/O を提供します。これがデモです。FileContents の使用(ソースはリンクからも入手できます)。

(1) 注: Java 1.2 以降、 JWS はフリー フローティングアプレットを起動できました。しかし、1.6.0_10+ では、JWS アプレットをブラウザ ウィンドウに埋め込んだままにすることができます(少なくとも Win と *nix の場合 - 「Mac ではありません」と聞こえます)。

于 2011-03-20T07:53:39.933 に答える