1

jboss 6 で認証にデータベース サーバー ログイン モジュールを使用しているときに、hsqldb データベース マネージャー GUI でプリンシパルとロールを管理するのに非常に役立つことがわかりました。これは、JMX コンソールから呼び出すことができます。JMX コンソールを使用しているのと同じマシンにアプリケーション サーバーが存在する場合、まったく問題はありません。

現在、アプリケーションサーバーが別のマシンで実行されている状況にあります。たとえば、ssh経由で接続するLinuxボックス、 デバッグなどのログをtail -fし、プレーンなVistaがインストールされたマシンで開発しています.

もちろん、JMX コンソールには引き続きアクセスできますが、今回は hsqldb データベース マネージャー ウィンドウを表示することができません。

私は特別な設定をせずに従来の XMing X サーバーをインストールしました (私は X サーバーにあまり詳しくないので、実際にはデフォルト設定を使用しています)、DISPLAY 環境変数を設定してエクスポートする必要があることがわかりました次のように、リモート マシン上で開発マシンを指すようにします。

 set DISPLAY=192.168.0.5:0
 export DISPLAY

また、リモート DISPLAY 変数が指す同じ IP アドレスへの X11 転送用に、ssh クライアント (単純なパテ) を構成しました。

JMX コンソールからデータベース マネージャーを起動しようとすると、次の例外トレースが表示されます。

ERROR [org.jboss.jdbc.HypersonicDatabase] (Thread-33) Failed to start database manager: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_17]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [:1.6.0_17]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [:1.6.0_17]
    at java.lang.reflect.Method.invoke(Method.java:616) [:1.6.0_17]
    at org.jboss.jdbc.HypersonicDatabase$1.run(HypersonicDatabase.java:530) [:6.0.0.Final]
Caused by: java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11GraphicsEnvironment
    at java.lang.Class.forName0(Native Method) [:1.6.0_17]
    at java.lang.Class.forName(Class.java:186) [:1.6.0_17]
    at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:82) [:1.6.0_17]
    at java.awt.Window.init(Window.java:385) [:1.6.0_17]
    at java.awt.Window.<init>(Window.java:438) [:1.6.0_17]
    at java.awt.Frame.<init>(Frame.java:419) [:1.6.0_17]
    at javax.swing.JFrame.<init>(JFrame.java:218) [:1.6.0_17]
    at org.hsqldb.util.DatabaseManagerSwing.main(Unknown Source) [:6.0.0.Final]
    ... 5 more
4

1 に答える 1

1

ちょっといじったら解決!問題は、Xming 構成パラメーターにありました。jboss インスタンスを実行しているマシンの IP アドレスを追加した「X0.hosts」という名前のファイルがありました。

Linuxボックスで「xhost +」を実行するのと同等のステップになる可能性があると思います。

于 2011-11-14T07:53:41.153 に答える