次のサンプル jnlp があります。
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="$$codebase" href="$$name">
<information>
<title>Some Example</title>
<vendor>Some Sample Vendor</vendor>
<homepage href="http://www.somesamplevendorhomepage.com"/>
<description>Some Sample Description</description>
<icon kind="splash" href="link_to_some_splash.jpg"/>
<offline-allowed/>
</information>
<security>
<all-permissions/>
</security>
<update check="always" policy="always"/>
<application-desc main-class="com.some.sample.Main">
<argument>--URL=SAMPLE_DB_NAME=http://localhost:<db_port>/webapplication/creds/auth</argument>
<argument>--UserTimeout=350</argument>
</application-desc>
<resources>
<j2se version="1.7+" />
<jar href="com.some.sample_1.0.0.jar"/>
.
.
.
</resources>
</jnlp>
(フォーマットやその他の不一致は無視してください - 重要なのは引数の部分だけです)
引数タグ内に変数db_portがある場合、 javawsで jnlp を実行するときにこの変数に値を渡す方法はありますか?
例: javaws /path/to/sample.jnlp 31022
編集:
JNLP は、(Windows では) AppData\LocalLow\Sun\Java\Deployment\cache の下にあるキャッシュ フォルダーに JAR をダウンロードします。ダウンロードした JAR に直接引数を提供してアプリを実行する方法を得るために、ダウンロード JAR (私のアプリには複数の JAR ファイルがあります) を使用する方法はありますか?
例えば:
jar -jar app.jar --URL=SAMPLE_DB_NAME=http://localhost:<db_port>/webapplication/creds/auth
PS: キャッシュ フォルダーに保存されているファイルには、計算されて生成された名前が付けられており、.jar 拡張子がないことを理解しています。ただし、Java コントロール パネル GUI から、または「javaws -viewer」を使用した CMD/PS から、jnlp として使用されているファイルを特定して起動することができました。一部の JAR を使用してアプリを起動する方法や、引数を渡すことができるようにするために「親」のものを作成する方法があるかどうか疑問に思っていました。