1

新しい Java 7 update 45 では、プロパティを設定できません。以前は次のように設定していました

<resources>
    ...
    <jar href="xxx.jar"/>
    <property name="xxx.xxx.xxx.xxx.userName" value="Batman"/>
    <property name="xxx.xxx.xxx.xxx.locale" value="en_US"/> 
    ...
</resources>

回避策を試し、次のことを試しました

<resources>
    ...
    <jar href="xxx.jar"/>
    <property name="jnlp.xxx.xxx.xxx.xxx.userName" value="Batman"/>
    <property name="jnlp.xxx.xxx.xxx.xxx.locale" value="en_US"/> 
    ...
</resources>

「javaws」も試しました。プレフィックスとして追加されました。

問題は、コードベースの変更を避け、jnlp レベルで問題を修正したいということです。

他の回避策やアイデアはありますか?

4

1 に答える 1

3

この OpenJDK バグ レポート ( https://bugs.openjdk.java.net/browse/JDK-8023821 ) によると、次の 3 つの回避策が考えられます。

  1. jnlp ファイルに署名します。署名済み jnlp ファイル (JNLP-INF/APPLICATION.JNLP) または署名付き jnlp テンプレート (JNLP-INF/APPLICATION_TEMPLATE.JNLP) のいずれかを使用します。

  2. 安全なプロパティを使用します。jnlp ファイル内のすべてのプロパティを変更して、「jnlp」を前に保留します。をプロパティ名に変更し、新しいプロパティ名を使用するようにすべてのコードを変更します。

  3. 安全なプロパティを使用し、署名付きアプリケーションのメインでそれらを安全でないプロパティに変換します。jnlp ファイルを変更して、jnlp ファイル内のプロパティ名の先頭に「jnlp.myapp.」を追加し、アプリケーションでシステム プロパティを読み取り、「jnlp.myapp.」で始まる各プロパティを読み取ります。「jnlp.myapp.」なしで対応するプロパティを設定します。名前の前に付いています。

2と3はあなたが望むものではないようです。したがって、オプション 1 が残ります (または、コードベースを変更する必要があることを受け入れます)。

于 2013-10-24T16:49:49.973 に答える