2

Java 6 u13でのJavaWebStartアプリケーションの最新化に問題があります(現時点で最新)。

新しいメカニズムを使用して、それぞれが独自の構成を持つ複数のマスター構成ファイルを作成し、jarリストが正確であることを確認するために自動生成される別のjnlpファイルを「インクルード」することを望んでいます。かなりの突っ込みの後、Mainが呼び出されたときにマスターファイルで定義されたプロパティがプログラムで使用できないという事実を除いて、私はそれを機能させました。

マスターJNLPは次のよ​​うになります(匿名化):

<jnlp>
  <information>
    <title>...</title>
    <vendor>...</vendor>
    <description>...</description>
    <description kind="short">...</description>
    <homepage href="http://....jnlp"/>
    <icon href="http://....gif"/>
    <!--          <offline-allowed/> -->
  </information>
  <security>
    <all-permissions/>
  </security>
  <resources>
    <j2se version="1.6+"/>
    <extension href="http://...extension.jnlp" />

    <property name="server.name" value="SERVER"/>
  </resources>
  <application-desc main-class="Main"/>
</jnlp>

そしてextension.jnlpは次のようになります:

<!-- Generated automatically.  Do not edit! -->
<jnlp>
  <information>
    <title>extension built 2009-04-22 12:39:58 CEST</title>
    <vendor>...</vendor>
  </information>
  <security><all-permissions/></security>
  <resources>
    <jar href="A.jar" />
    <jar href="B.jar" />
    <jar href="logback-classic-0.9.14.jar" />
    <jar href="logback-core-0.9.14.jar" />
    <jar href="slf4j-api-1.5.6.jar" />
  </resources>
  <component-desc />
</jnlp>

私はextension.jnlpにもプロパティを入れてみました。助けにはならなかった。JVMは再利用され、Javaプラグインコンソールのログに従って再起動されません。

助言がありますか?

4

2 に答える 2

3

私はまったく同じ問題に苦しんでいました。要素を拡張機能jnlp
に移動すると、を使用するアプリケーションで使用できるようになります。<property>System.getProperty()

しかし、マステットjnlpで定義されたすべてのjarとプロパティを含む拡張jnlpが必要だったため、これは私にとっての解決策ではありません。

どうやら、

信頼できないアプリケーションの場合、JNLPファイルに設定されたシステムプロパティは、安全であると見なされた場合にのみJavaWebStartによって設定されます。

javaws.独自のプロパティをVMに渡したい場合、それらの名前はまたはで始まる必要がありjnlp.ます。このようなプロパティは安全であると見なされます。<property>要素にはvalue属性が含まれている必要があります。例:

<property name="jnlp.my.property" value="a value" />

リンク:

  1. http://docs.oracle.com/javase/6/docs/technotes/guides/javaws/developersguide/syntax.html#resources
  2. http://docs.oracle.com/javase/tutorial/deployment/doingMoreWithRIA/settingArgsProperties.html
于 2012-09-14T15:34:29.770 に答える
0

実験の結果、拡張ファイルで定義されたプロパティは、メインの jnlp ファイルのプロパティよりもはるかに厳格なルールの下にあり、ルールに準拠していないプロパティは黙って破棄されることがわかりました。

于 2010-06-02T08:00:04.177 に答える