1

最新の JDK とサンプルをダウンロードします。上記の JavaFX サンプル プログラムを実行しようとしていますが、その DataAppServer で常にエラーが発生します。

データベースとグラスフィッシュ サーバーは正常に動作しています。問題なく DataAppClient を実行できます。また、既存の html ファイルをクリックして、IE ブラウザ経由で他のサンプルを実行することもできます。

DataAppServer は DataAppClient と同じですが、クライアントは Web サービスとして実行され、IE ブラウザーで起動されます。

Windows 7 64 ビットを使用しています。最新の NetBeans IDE を使用しています。サンプルでは何も変更していません。マシンの Java 設定を確認したところ、Java が有効になっています。

これは、DataAppServer を実行したときの最初の警告です。

ここに画像の説明を入力

次に、checkBox をオンにして、[実行] ボタンをクリックします。次のページが表示されます。

ここに画像の説明を入力

エラーの詳細は次のとおりです。

ここに画像の説明を入力

それを機能させるために私がすべきことはありますか?

編集:

最新の v3.1.2 である GlassFish サーバーにいくつかのエラーがあることに気付きました。

SEVERE: Exception while visiting com/sun/gjc/spi/base/datastructure/Cache.class of size 450
java.lang.NullPointerException
    at org.glassfish.hk2.classmodel.reflect.impl.TypesImpl.getType(TypesImpl.java:78)
    at org.glassfish.hk2.classmodel.reflect.impl.ModelClassVisitor.visit(ModelClassVisitor.java:119)
    at org.objectweb.asm.ClassReader.accept(Unknown Source)
    at org.objectweb.asm.ClassReader.accept(Unknown Source)
    at org.glassfish.hk2.classmodel.reflect.Parser$5.on(Parser.java:363)
    at org.glassfish.hk2.classmodel.reflect.util.JarArchive.onSelectedEntries(JarArchive.java:125)
    at org.glassfish.hk2.classmodel.reflect.util.DirectoryArchive.parse(DirectoryArchive.java:111)
    at org.glassfish.hk2.classmodel.reflect.util.DirectoryArchive.onSelectedEntries(DirectoryArchive.java:92)
    at org.glassfish.hk2.classmodel.reflect.Parser.doJob(Parser.java:348)
    at org.glassfish.hk2.classmodel.reflect.Parser.access$300(Parser.java:70)
    at org.glassfish.hk2.classmodel.reflect.Parser$3.call(Parser.java:307)
    at org.glassfish.hk2.classmodel.reflect.Parser$3.call(Parser.java:296)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:722)

SEVERE: Thu Jun 13 08:56:54 EDT 2013 Thread[main,5,main] java.io.FileNotFoundException: derby.log (Access is denied)

SEVERE: Thu Jun 13 08:56:54 EDT 2013 Thread[main,5,main] Ignored duplicate property derby.module.dataDictionary in jar:file:/C:/Program%20Files/glassfish-3.1.2.2/javadb/lib/derby.jar!/org/apache/derby/modules.properties

SEVERE: Thu Jun 13 08:56:54 EDT 2013 Thread[main,5,main] Ignored duplicate property derby.module.lockManagerJ1 in jar:file:/C:/Program%20Files/glassfish-3.1.2.2/javadb/lib/derby.jar!/org/apache/derby/modules.properties

SEVERE: Thu Jun 13 08:56:54 EDT 2013 Thread[main,5,main] Ignored duplicate property derby.env.classes.dvfJ2 in jar:file:/C:/Program%20Files/glassfish-3.1.2.2/javadb/lib/derby.jar!/org/apache/derby/modules.properties
...
4

1 に答える 1

0

実行に必要なアクセス許可をアプリケーションに提供するには、DataApp クライアント アプリケーションに署名する必要があります。

NetBeans で署名を実行するには、DataApp クライアント プロジェクトを開き、プロジェクトを右クリックして [プロパティ] を選択し、[無制限のアクセスを要求する (署名を有効にする)] チェックボックスをクリックします。

サイン

DataApp クライアント プロジェクトを再構築し、実行してみます。ブラウザーまたは webstart の展開からアプリケーションを実行すると、引き続き警告が表示されます (発行者が自己署名証明書を使用したことを示す別のものになります)。警告をクリックします。

アプリケーションと JavaFX への署名の詳細については、JavaFX デプロイメントのドキュメントを参照してください。

特に、DataApp クライアントは fxml を利用します。サンドボックス環境 (ブラウザーや webstart など) にデプロイされたアプリケーションは、(少なくとも JavaFX 2.2 で、おそらくそれ以降の JavaFX リリースでも) 動作できるように署名する必要があります。詳細については、イシュー トラッカー リファレンスRT-23622 FXML を使用する JavaFX アプリケーションがブラウザーで実行中に失敗するを参照してください。

于 2013-06-10T22:53:52.033 に答える