JNLPファイルでは、jarリソースのバージョンプロパティは任意のメタデータ(マニフェストなど)に関連していますか、それともJNLPファイルを作成するユーザーによって任意に設定されていますか?
1 に答える
JNLP仕様のセクション6には、セクション6.3「バージョンベースのダウンロードプロトコル」の下に次の情報が記載されています。
バージョンベースのダウンロードプロトコルの場合、すべてのリソースはURL/バージョンIDのペアによって一意に識別されます。したがって、JNLPクライアントは、特定のURLにある特定のバージョンのリソースをいつでも要求できます。
JNLPクライアントは、必要なリソースの特定のバージョンを含むHTTPGET要求を発行します。要求には、要求されたバージョンを指定するフィールドversion-idが含まれます。たとえば、次のjar要素があるとします。
<jar href="http://www.mysite.com/b.jar" version="2.3+"/>
次に、JNLPクライアントは次のHTTPGETリクエストを発行する必要があります14。
http://www.mysite.com/c.jar?version-id=2.3%2B
JNLPクライアントは、HTTP応答ステータスコードとMIMEタイプを調べて、結果が成功したかどうかを判断する必要があります。有効な応答はセクション6.1.2で説明されています。上記のjar要素の場合、application /x-java-archive-diffMIMEタイプを返すことはできません。インクリメンタルリクエストの場合にのみ返すことができます。
リクエストで使用されるバージョン文字列は必ずしも正確ではありません(例:2.3+)。Webサーバーは、HTTPヘッダーフィールドx-java-jnlp-version-idを設定して、応答で返されるリソースの正確なバージョンIDを指定する必要があります。返される正確なバージョンは、要求されたバージョン文字列と一致するものでなければなりません。
残念ながらスペック。オンラインブラウジングには使用できませんが、ダウンロードすることはできます。私はそれがJWS開発にとって非常に貴重であることに気づきました。