ここでは、Java Network Launcher Protocol (JNLP) ファイルを静的および動的に使用する方法について記述します。
<?xml version="1.0" encoding="UTF-8"?> <web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name> WAS Client runtime for Java Web Start</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> <mime-mapping> <extension>jnlp</extension> <mime-type>application/x-java-jnlp-file</mime-type> </mime-mapping> </web-app>
response.setContentType("application/x-java-jnlp-file");動的 JNLP 応答を生成する場合、JSP ファイルではなくサーブレットの使用が推奨されます。 JNLP 応答を JSP ファイルを使用して動的に生成すると、Internet Explorer で Java Web Start を開始できない場合があります。 これは、WebSphere Application Server の JSP エンジンが、常に ISO-8859-1 の文字セット値を応答ヘッダーのコンテンツ・タイプに追加するためです。 そのため、JSP ファイル内で単に "application/x-java-jnlp-file" と設定されていても、 応答ヘッダーのコンテンツ・タイプは "application/x-java-jnlp-file;charset=ISO-8859-1" になります。 この文字セット値によって、Internet Explorer は応答を有効な JNLP 応答と認識できず、JNLP 応答のコンテンツを平文として表示します。
Firefox や Mozilla などのブラウザーでは、応答のコンテンツ・タイプの文字セット値に対する耐性が比較的高くなっています。 ブラウザーは Java Web start を起動して JNLP 応答を処理します。