The deployment descriptor file is the main Java Network Launcher Protocol (JNLP) descriptor file for the client application.
<j2se version="WASclient6.0" href="/WebSphereClientRuntimeWeb/Runtime/jnlp.jsp"/>
<j2se version="WASclient6.1.0" href="/WebSphereClientRuntimeWeb/Runtime/WebSphereJre/AppClientRT.jsp"/>
The EAR file must be specified as a JAR resource so that it can be downloaded to JWS and specified in the system property, com.ibm.websphere.client.launcher.ear. See JNLP descriptor file for a J2EE Application client application for an example.
<resources> <j2se version="WASclient6.0" href="/WebSphereClientRuntimeWeb/Runtime/jnlp.jsp"/> <jar href="Launcher/WebSphereClientLauncher.jar" main="true"/> <jar href="lib/j2eeclient.ear"/> <property name="com.ibm.websphere.client.launcher.ear" value="j2eeclient.ear"/> </resources>
<resources> <j2se version="WASclient6.0" href="/WebSphereClientRuntimeWeb/Runtime/jnlp.jsp"/> <extension name="WebSphere Runtime" href="/WebSphereClientRuntimeWeb/Runtime/WebSphereJars/jnlp.jsp"/> <jar href="Launcher/WebSphereClientLauncher.jar" main="true"/> <jar href="lib/thinclient.jar"/> <property name="com.ibm.websphere.client.launcher.main" value="myapp.sample.thinclient.ThinClientMain”/> </resources>
The Thin Application client application JAR file must be specified as a JAR resource so that it can be downloaded to JWS and the name of the class containing main method entry point is specified in the system property, com.ibm.websphere.launcher.main. See JNLP descriptor file for a Thin Application client application for an example.
<extension name="WebSphere Runtime" href="/WebSphereClientRuntimeWeb/Runtime/WebSphereJars/jnlp.jsp"/>
<extension name="WAS Thin EJB Client Library" href="/WebSphereClientRuntimeWeb/Runtime/WebSphereJars/AppClientLib.jnlp"/>
The JNLP specification requires all the resource (JAR or EAR) files used in a JNLP file to be signed.
<property name="java.naming.provider.url" value="corbaloc:iiop:myserver.com:9089"/>
<argument> >-CCDjava.naming.provider.url =corbaloc:iiop:myserver.mydomain.com:9080 </argument>
<argument> -CCDcom.ibm.ssl.keyStore=${WAS_ROOT}/etc/DummyClientKeyFile.jks </argument> <argument>-CCDcom.ibm.ssl.trustStore=${WAS_ROOT}/etc/DummyClientTrustFile.jks </argument>
<argument> -CCDcom.ibm.ssl.keyStore=${WAS_ROOT}/etc/key.p12 </argument> <argument>-CCDcom.ibm.ssl.trustStore=${WAS_ROOT}/etc/trust.p12 </argument>
<argument>-CCDjava.naming.factory.initial=com.ibm.websphere.naming.WsnInitialContextFactory </argument>
<argument>-CCDcom.ibm.CORBA.ConfigURL=file:${WAS_ROOT}/properties/sas.client.props </argument>
<argument>-CCDcom.ibm.CORBA.ConfigURL=file:${WAS_ROOT}/properties/sas.client.props </argument> <argument>-CCDcom.ibm.SSL.ConfigURL=file:${WAS_ROOT}/properties/ssl.client.props </argument>
<argument>-CCDjavacom.ibm.CORBA.securityEnabled=false </argument>
<argument>-CCDcom.ibm.ssl.keyStore=\${WAS_ROOT}/etc/DummyClientKeyFile.jks </argument> <argument>-CCDcom.ibm.ssl.trustStore=\${WAS_ROOT}/etc/DummyClientTrustFile.jks </argument>
<argument>-CCDjavacom.ibm.CORBA.securityEnabled=false </argument>
<argument>-CCDcom.ibm.ssl.keyStore=\${WAS_ROOT}/etc/key.p12 </argument> <argument>-CCDcom.ibm.ssl.trustStore=\${WAS_ROOT}/etc/trust.p12 </argument>
<%-- This is a generic jnlp for a client app. It will specify the WAS JRE as a dependency as well as the client launcher --> <%! private final String description="J2EE Client Example"; private final String earName="J2EEWebStart.ear"; %> <% // locally declared variable String urlSt = request.getRequestURL().toString(); String jnlpCodeBase=urlSt.substring(0,urlSt.lastIndexOf('/')); String jnlpRefURL=urlSt.substring(urlSt.lastIndexOf('/')+1,urlSt.length()); // The client application descriptor noted a resource reference to be resolved at deploy time as following %> <%-- Need to set a JNLP mime type - if Web Start is installed on the client, this header will induce the browser to drive the Web Start Client --%><% response.setContentType("application/x-java-jnlp-file"); 1 response.setHeader("Cache-Control", null); response.setHeader("Set-Cookie", null); response.setHeader("Vary", null); %> <?xml version="1.0" encoding="utf-8"? <!-- JNLP File for <%=description %> --> <jnlp spec="1.0+" <%-- Automate the code base response -->% codebase="<%=jnlpCodeBase%>" href="<%=jnlpRefURL%>" <information> <title><%=description %></title> <description kind="short"><%=description %></description> <description kind="tooltip"><%=description %></description> <offline-allowed></offline-allowed> </information> <security> <all-permissions></all-permissions> </security> <resources> <%-- The URL for the Client JRE installer --%> WASclient6.0" href="/WebSphereClientRuntimeWeb/Runtime/jnlp.jsp"></j2se> 2 <%-- Specify the client launcher --%> <jar href="../Launcher/WebSphereClientLauncher.jar" main="true"> </jar> 3 <%-- Ear we want to download to the client --%> <jar href="<%=earName%>"></jar> 4 <%-- The launcher depends on this property to be set --%> <property name="com.ibm.websphere.client.launcher.ear" value="<%=earName%>"><property> 5 <resources> <%-- Web Start will consider the Launcher as the application to run --> <application-desc> 6 <argument>-CCproviderURL=corbaloc:iiop:your_server_hostname </argument> 7 < <argument>- CCDcom.ibm.ssl.keyStore=\${app_server_root}/etc/DummyClientKeyFile.jks</argument> 8 <argument>- CCDcom.ibm.ssl.trustStore=\${app_server_root}/etc/DummyClientTrustFile.jksCCDcom.ibm.ssl.trustStore=\${app_server_root}/etc/DummyClientTrustFile.jks</argument> 9 </application-desc> </jnlp>