2

ユーザーのシリアル ポートから読み取る Java アプレットを作成しようとしています。このために、RXTX ライブラリと組み合わせてJava Comm APIを使用しています。ローカル Java アプリケーションを介してデータを読み取ることに成功しましたが、アプレット内から同じことを行うことができないようです。問題は、RXTX ライブラリがネイティブ ライブラリであり、このライブラリを Java アプレット内にロードする方法が見つからないことです。興味深い記事を 2 つ見つけました (Using JNI in Appletsはこの記事を参照しています) が、どちらも 10 年以上前のものであり、新しい解決策があるかどうか疑問に思っています。または、代替案を提案できる場合は、ぜひお聞かせください。

4

5 に答える 5

3

Java Web Start を使用します。ネイティブ ライブラリを署名済みの jar として含めることができ、すべてが機能するはずです。

1) ROOT ディレクトリの jar にネイティブ ライブラリを配置する 2) すべての jar に署名する 3) すべての jar を参照する JNLP を作成する (jnlp の作成方法を検索してください)

その後、動作するはずです

于 2009-05-05T16:23:36.500 に答える
0

ここでも答えに本当に興味があります。私の提案は、RXTX の .jar と .dll を \program files\java\ ツリーにインストールすることです。アプレットを使用する前に、それらをターゲット システムにインストールできます。Java Web Start を使用するというアイデアが気に入っています。アプレットに署名すると、マシン上のファイルを読み書きできなくなりますか? では、.jar と .dll をインストールして、後でそれらを使用できますか?

Windows の場合、rxtx ではなく「Windows Java Serial Com Port Driver」を使用することをお勧めします。http://www.engidea.com/blog/informatica/winjcom/winjcom.htmlからダウンロードできます。 インストールと使用がはるかに簡単で、バグが少ないことがわかりました。USB ポートが取り外されると RXTX がクラッシュするため、USB シリアル デバイスで RXTX を使用できませんでした。winjcom はこれらの問題を解決してくれました。

私はまだ DLL を展開する方法を決定しようとしていますが、「Windows Java Serial Com Port Driver」の DLL が変更されるとは思わないため、汗をかきません。-ストッシュ

于 2009-04-21T01:19:31.873 に答える
0

まず、アプレットでそれを行うのはおそらく悪い考えです。

とにかく先に進む場合は、JNLPAppletLauncherが役立つ場合があります。

于 2009-03-13T15:39:01.483 に答える
0

私はアプレットについて知りません。セキュリティ/マシンのリソースへのアクセスなど。

Web 展開可能なソリューションが必要な場合は、Java Web Startを見ましたか? 特にこのFAQ エントリを参照してください

于 2009-03-13T15:40:08.220 に答える