Web Start 経由で JConsole を起動できるかどうかを知りたいです。
たとえば、Web アプリケーションがあり、ユーザーがボタン (JMX エンドポイントの IP:PORT を持つ) をクリックすると、JConsole を起動して、ユーザーが特定の JMX エンドポイントを監視できるようにしたいと考えています。
私のサーバーにはJavaがインストールされているので、これは可能だと思いました。
誰もそれをやろうとしたことがありますか?自分で開発したものではないアプリケーションを起動したいのですが、何か問題はありますか?
前もって感謝します。
EDIT I .jnlp ファイルは次のとおりです。
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="" href="">
<information>
<title>JConsole Web Start</title>
<vendor>User</vendor>
</information>
<security>
<all-permissions />
</security>
<resources>
<j2se version="1.6+" initial-heap-size="150m" max-heap-size="512m" />
<jar href="http://127.0.0.1/jconsole.jar" main="true" />
</resources>
<application-desc name="sun.tools.jconsole.JConsoleWebStart"
main-class="sun.tools.jconsole.JConsole" width="300" height="300">
<argument><![CDATA[hostname:port]]></argument>
</application-desc>
</jnlp>
これが機能することがわかりました。ただし、Java 7 では動作せず、「メイン クラスのパッケージ名が正しくありません」という例外がスローされます。Java 6 を試してみましたが、正常に動作していますが、その理由がよくわかりません。
編集 II: 最後に、上記の .jnlp が Java 7 で開始できない理由は、メイン クラスのsun.tools.jconsoleパッケージ名であることがわかりました。Java7 は、sun で始まるパッケージ名が気に入らないようです。したがって、私は実際に jconsole をラップして動作する独自の jar を作成しました。