0

org.apache.commons.net.ftp.FTP を使用して Web ページから ftp サーバーにファイルをアップロードする Java アプレットを作成しています。

アプレットはEclipseで動作します..

私のプロジェクトには、Uploader.java、FtpUpload_thread.java、および commons-net-2.2.jar (org.apache.commons.net.ftp.FTP をインポートするため) ファイルが含まれています。

cmd コマンドを使用してクラスをコンパイルします。

javac *.java -cp *.jar

クラスをhtmlに入れました:

<applet code="Uploader.class" codebase="./" archive="commons-net-2.2.jar" width="600" height="230"></applet>

しかし、接続を確立しようとすると、次のエラーが表示されます。

java.security.AccessControlException: access denied (java.net.SocketPermission /*myftp*/ resolve)

だから私は自分のアプレットに署名する必要があります..

  • jar ファイルを作成します。

    jar cvf Uploader.jar Uploader.class FtpUpload_thread.class commons-net-2.2.jar

  • キーを生成します:

    keytool -genkey -alias signFiles -keystore compstore

次に、プログラムが必要とする値を入力します。これで、compstore データベース ファイルができました。

  • JAR ファイルに署名します

    jarsigner -keystore compstore -storepass pass -keypass pass -signedjar UploaderS.jar Uploader.jar signFiles

そして私は UploaderS.jar ファイルを持っています

だから今、私は自分のフォルダを持っています:

Uploader.jar
UploaderS.jar
compstore
Uploader.class
commons-net-2.2.jar
FtpUpload_thread.class

それはすべてですか、それとも他の手順が必要ですか?

署名アプレットを配置してアクセス許可で実行するための html コードは何ですか?

ありがとう!

4

1 に答える 1

0

<applet> タグではなく、Java プラグインを使用することをお勧めします。

クラスに必要なすべての jar を指定し、署名付きアーカイブを使用する必要があります

<object classid="clsid:CAFEEFAC-0016-0000-0000-ABCDEFFEDCBA" width="600" height="230">
    <param name="code" value="Uploader" />
    <param name="java_archive" value="UploaderS.jar, commons-net.jar" />
    <comment>
         <embed width="600" height="230" code="Uploader" type="application/x-java-applet;version=1.6" archive="UploaderS.jar, commons-net.jar">
             <noembed>
                 No Java Support.
             </noembed>
        </embed>
    </comment>
</object>

また、アプレット クラスにパッケージを配置することをお勧めします。

アプレットが使用する権限を指定する方法がわかりません。

お役に立てれば。

于 2011-01-20T18:18:03.270 に答える