1

外部構成が必要な webstart アプリケーションがあります。お客様が手動で変更するため、構成は外部である必要があります。この構成で別のjarを追加することを検討しました。アプリケーションは署名されており、キーをお客様に提供することはできません。このファイルを Web サーバーからアクセスできるように配置することに傾いています。

内部のwebstartアプリケーションからコードベースのURLを取得する方法、またはjar以外のファイルをクラスパスに追加するようにwebstart jnlpファイルを構成する方法はありますか?

それが手がかりである場合、私は完全なビルドにmavenを使用します。

その他のアイデアは受け入れられます。

4

4 に答える 4

2

コードベースは。で取得できますBasicService.getCodeBase

于 2009-09-24T22:12:51.277 に答える
1

Java Preferences APIを使用して、外部構成データを保存できます。これは、人のマシンに対してローカルになります。Windows ではレジストリを使用し、Unix では従来の「.xyz」ファイルを使用します。

この構成を操作するための UI をアプリに用意するのが最善ですが (ユーザーを RegEdit に送るのはあまり良いことではありません)、派手なものである必要はありません。名前/値のペア エディターがそのトリックを行います。また、「未構成」のアプリを起動するには、適切なデフォルトを使用してください。

于 2009-09-24T21:30:52.920 に答える
0

JNLP ダウンロード サーブレットを使用する場合、システム プロパティとして $$codebase マクロをアプリケーションに渡すことができます。これにより、コードベース URL にアクセスできるようになります。

私たちの webstart アプリケーション構成は、SQL を使用してサーバーに保存されますが、それはニーズに対して少し重いかもしれません。

于 2009-09-24T21:27:10.417 に答える
0

ここで jnlp 構文リファレンスを確認してください: http://java.sun.com/j2se/1.5.0/docs/guide/javaws/developersguide/syntax.html

あなたにとって重要なのは、「リソース」タグです。

<resources>
  <j2se version="1.4.2+" java-vm-args="-esa -Xnoclassgc"/>
  <jar href="lib/SwingSet2.jar"/>
</resources>

上記の例では、SwingSet2.jar がクラスパスに追加されます。クラスパスにさらに jar が必要ですか? 別の jar リソースを追加する

<resources>
 <j2se version="1.4.2+" java-vm-args="-esa -Xnoclassgc"/>
 <jar href="lib/SwingSet2.jar"/>
 <jar href="lib/SwingSetSupplment.jar"/>
</resources>

私はコードベースでまったく同じ問題を抱えていました。私はJnlpServletを使用することになりました(あなたはそれをググる必要があります..ハイパーリンクを1つだけ投稿できます:()、jnlpファイルを提供するときに正しいコードベースを自動的に含めてから追加します

<property name="app.codebase" value="$$codebase"/>

リソースセクションに。

于 2009-09-24T21:24:01.190 に答える