Internet Explorerを使用して* .jnlp拡張子を開くときに問題が発生します。拡張機能はChromeおよびFirefoxで適切に開きます。IEおよびの問題である可能性がありますWebサーバー/ JNLP構成。具体的には、Internet Explorerは* .jnlpファイルを、ファイルをダウンロードしたり、Java web開始。
例:
<?xml version="1.0" encoding="utf-8" ?>
- <!--
JNLP File for Downtime Registration Application
-->
- <jnlp spec="1.7+" codebase="http://foo:8080/bar" href="bar.jnlp">
- <information>
<title>FOO</title>
<vendor>FOO Inc.</vendor>
<description>FOO BAR System</description>
- <shortcut online="false">
<desktop />
<menu submenu="FOO" />
</shortcut>
</information>
- <security>
<all-permissions />
</security>
- <resources>
<j2se version="1.7+" Java-vm-args="-client" />
...
</resources>
<application-desc main-class="FooBarMainApp" />
</jnlp>
次の「修正」/回避策を試しても役に立たない:
更新:以下に投稿した回避策でこの問題を解決できました。ただし、提案がある場合は、より永続的な修正を探しています。具体的には、可能であればビジネス/サーバー側でこれを修正する方法を探しています。ユーザーが自分の側で設定を変更する必要がない場合は、すばらしいでしょう(それ以外の場合は、IEから別のブラウザーに切り替えます)。
web.xmlのMIMEマッピング:
<mime-mapping>
<extension>jnlp</extension>
<mime-type>application/x-Java-jnlp-file</mime-type>
</mime-mapping>
Internet Explorer内の特定の設定を変更することで、この問題を解決することになりました。
ツール->インターネットオプション->セキュリティ->カスタムレベル...->その他-> MIMEスニッフィングを有効にする-> 無効
この修正を見つけるのにしばらく時間がかかったので、他の誰かがこの問題を抱えている場合に備えて、ここに含めます。
PS:これは、恒久的な修正よりも回避策の詳細です。追加の洞察があれば役立ちます。
pdate:<%@ page contentType = "application/x-Java-jnlp-file"%>を追加することになりましたJNLPファイルの始まり、そして戦争の構築。基本的に、JNLPは自動的に起動しますが、解析エラーが発生します。この行がJNLPから削除され、WARが再構築されると、JNLPはjavawebstartを起動し、解析エラーがなくなりました(AKA問題が解決されました)。理由は本当にわかりませんが、これはmagicが機能しているようです。
JNLPの問題は、以下の手順に従って修正できます。
C:\Program Files\Java\jre1.8.0_161\lib
上)を選択しました。Internet Explorerで開こうとしたところ、自動的に動作しました。
または、ダウンロードされたファイルから、JNLP拡張ファイルを右クリックし、javawsで開きます(C:\Program Files\Java\jre1.8.0_161\lib
上)。私はこれを試しませんでしたが、うまくいくと思います。
JWSアプリケーションをすべての署名済みライブラリーとともにEAR/WARの外に保管します。
JWSアプリケーションがApache Webサーバーでホストされている場合、httpd.confで、次のようにタイプを追加できます。
AddType application/x-Java-jnlp-file .jnlp
ここで参照: http://httpd.Apache.org/docs/current/mod/mod_mime.html