Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
APPX Desktop Client Launched via Java Web Start | ||||||||
Changed: | ||||||||
< < | This document will explain how to start the APPX Desktop Client via Java Web Start Technology. | |||||||
> > | This document will explain how to start the APPX Desktop Client via Java Web Start Technology. | |||||||
Overview | ||||||||
Changed: | ||||||||
< < | When you publish the APPX Desktop Client using Java Web Start technology you ensure the most current version of the application will be deployed, as well as the correct version of the Java Runtime Environment (JRE). Since the APPX Desktop Client will only be configured on the web server, you will not need to install the client on each desktop in your enterprise, just have the user base run the application for a published URL. This document applies to APPX Desktop Client version 5.2.2. These instructions do not require any APPX server configuration other than an APPX Login Manager configured to accept logins. APPX server on any platform may be connected to via the client when launched with Java Web Start. The size of the APPX Java Web Start bundle is about 18 MB. When the APPX Desktop Client is run for the first time, Java Web Start will download the entire package; the next time it will check only for modified jar files (an upgrade) and download them. If this is not the case, the application will start immediately. | |||||||
> > | When you publish the APPX Desktop Client using Java Web Start technology you ensure the most current version of the application will be deployed, as well as the correct version of the Java Runtime Environment (JRE). Since the APPX Desktop Client will only be configured on the web server, you will not need to install the client on each desktop in your enterprise, just have the user base run the application for a published URL. This document applies to APPX Desktop Client version 5.2.2 and higher. These instructions do not require any APPX server configuration other than an APPX Login Manager configured to accept logins. The size of the APPX Java Web Start bundle is about 18 MB. When the APPX Desktop Client is run for the first time, Java Web Start will download the entire package; the next time it will check only for modified jar files (an upgrade) and download them. If this is not the case, the application will start immediately. | |||||||
Required software componentsAPPX Desktop Client Java Web Start BundleYou can get the APPX Desktop Client Java Web Start Bundle from the Desktop Downloads page. | ||||||||
Deleted: | ||||||||
< < |
APPX ServerYou need a functioning APPX installation. Follow the installation instructions for the release to install APPX. | |||||||
Web ServerYou need a functioning web server configured with jnlp mime type support. Apache and IIS are two common servers. | ||||||||
Line: 18 to 14 | ||||||||
Web ServerYou need a functioning web server configured with jnlp mime type support. Apache and IIS are two common servers. | ||||||||
Deleted: | ||||||||
< < | ||||||||
Quick steps | ||||||||
Changed: | ||||||||
< < | APPX Desktop Client Java Web Start Bundle | |||||||
> > |
| |||||||
| ||||||||
Changed: | ||||||||
< < |
APPX ServerInstall the APPX Server. No special configuration is needed in the APPX Server for APPX Desktop Client connectivity when launched via Java Web Start, just make sure you have an APPX Client Manager ( Unix or Linux or Windows) listening and accepting logins. | |||||||
> > |
| |||||||
Detailed stepsHere are the steps I used to load the APPX Desktop Client via Java Web Start. These instructions assume that you already have a working installation of APPX Server that is configured with a Client Manager ( Unix or Linux or Windows) and accepting logins. You must also have a web server installed and started. | ||||||||
Line: 38 to 24 | ||||||||
Download and place the APPX Desktop Client Java Web Start Bundle.For a Windows Web Server, download the Java Web Start Bundle and place the bundle in a directory off of your web server's web root. Extract the files using the appropriate command (tar or zip). | ||||||||
Changed: | ||||||||
< < | appx32.gifThe appx32.gif file is the file used as an application runtime icon. It is referenced by the appx.jnlp file that we review later in this document.appx32.pngThe appx32.png file is the file used in a popup in the index.html file that we review later in this document.appx.cssThe appx.css contains css formatting and is referenced in the index.html file that we review later in this document.README.txtREADME.txt contains the following very brief instructions to the reader.Place these files on your web server. You need to change one item, replace appxjwsclient.example.com with the hostname and URL to the location of your files. In appx.jnlp: codebase="http://appxjwsclient.example.com/" Please see our Wiki at http://wiki.appx.com/wiki/bin/view/Main/LaunchingAPPXDesktopClientFromWebPageViaJavaWebstart for further documentation. appx.htmlThe appx.html file exists only to provide the user with a link to click the appx.jnlp file. It is not technically needed because if someone entered the path to the jnlp file the application would launch just the same as if the jnlp file had been clicked from a link in the html file. Let's take a look at the appx.html file. This file is just a starter file that you can use to load the .jnlp file. There is a bit of javascript code that attempts to detect if a JRE is installed on the user's desktop for the Java Web Start launch. If the JRE needs to be installed or updated the script will either attempt to update the JRE or present the user with the appropriate link to download the software manually.appx.html contents[joe@webserver appx]$ *cat appx.html* <HTML> <HEAD> <TITLE>APPX Desktop Client Web Start</TITLE> <body link="#333333" vlink="#444444" alink="#106D86"> </HEAD> <BODY BGCOLOR=#146C86> <font face="Verdana, Arial, Helvetica, sans-serif" size="2"> <font color=white> <center> <hr> <font veranda> <font style=bold> <font size=13pt> <font color=white> APPX Desktop Client Web Start Demonstration <h3> Clicking the icon below will attempt to detect if the correct Java JRE is installed, and if possible install it. If the installer determines you need an updated JRE but it can't auto install a JRE, it will place you on Sun's download page for your platform. After the JRE requirement is met, the APPX Desktop Client will be downloaded and launched. <hr> <h3> <!--<A HREF="http://www.example.com/appx/appx.jnlp">Click</a> To Launch the APPX Desktop Client Demonstration--> <!-- Start of Sun's deployJava.js script that attempts to detect if Java is installed and install it or updated --> <!-- as needed for Windows, Linux and Mac. Sun encourages you to hotlink their version of the script --> <!-- because they update it as needed. At the moment, the Windows platform has the best support for detection --> <!-- This deployJava.js script is meant to replace the A HREF line above, so we've left it commented out --> <script src="http://java.com/js/deployJava.js"></script> <script> var url = "http://www.example.com/appx/appx.jnlp"; deployJava.launchButtonPNG = "http://www.example.com/appx/APPXLaunchButton.png"; deployJava.createWebStartLaunchButton(url, '1.6+'); </script> <BR> <hr> <h5>Please see our <a href=http://wiki.appx.com/wiki/bin/view/Main/LaunchingAPPXDesktopClientFromWebPageViaJavaWebstart>Wiki</a> for further documentation. </BODY> </HTML> [joe@webserver appx]$ appx.html modificationsYou should change the following two URL values in your appx.html file to match your site.var url = " http://www.example.com/appx/appx.jnlp "; deployJava.launchButtonPNG = " http://www.example.com/appx/APPXLaunchButton.png "; splash.gifThis is the initial image displayed while the APPX Desktop Client is loading, it is referenced by name in the appx.jnlp file.APPXLaunchButton.pngAPPXLaunchButton.png is an image file that is displayed for the user to click to begin the JRE detection and ultimately start the APPX Desktop Client.appx-nativelib.jarThe appx-nativelib.jar file contains platform specific files for the proper execution of the appx.jar file.appx.jar | |||||||
> > | index.html | |||||||
Changed: | ||||||||
< < | The APPX Desktop Client in Java jar format. | |||||||
> > | The index.html file is a starter file that loads the .jnlp file. There is a bit of javascript code that attempts to detect if a JRE is installed on the user's desktop for the Java Web Start launch. If the JRE needs to be installed or updated the script will either attempt to update the JRE or present the user with the appropriate link to download the software manually. You can customize this file as desired. Alternatively, some browsers will open the .jnlp file directly. | |||||||
appx.jnlp | ||||||||
Changed: | ||||||||
< < | This is an XML file that defines the environment that the APPX Desktop Client will run it. The file is made up of elements, element values, element stanzas and comments. The file is documented with comments. Now take a look at the appx.jnlp file.
appx.jnlp contents | |||||||
> > | This is an XML file that defines the environment for the APPX Desktop Client. The file is made up of elements, element values, element stanzas and comments. The file is documented with comments. The only change required is the URL of the appx.jnlp file. For example, if we installed the web start bundle in the 'appx' folder of our 'www.abc-company.com' web site, then we would change the 'codebase' line to: | |||||||
Changed: | ||||||||
< < | [joe@webserver appx]$ *cat appx.jnlp* <?xml version="1.0" encoding="utf-8"?> <!-- JNLP File for APPX Desktop Client --> <jnlp spec="6.0+" codebase="http://appxjwsclient.example.com/" href="appx.jnlp"> <information> <title>APPX</title> <vendor>APPX Software, Inc.</vendor> <homepage href="http://www.appx.com"/> <description>APPX</description> <description kind="short">APPX</description> <description kind="tooltip">APPX 5.2.2 via JWS</description> <icon href="appx32.gif"/> <icon kind="shortcut" href="appx32.gif" width="32" height="32"/> <icon href="splash.png" kind="splash"/> <icon href="appx32.gif" kind="default"/> <shortcut online="false"> <desktop/> <menu submenu="APPX"> </menu> </shortcut> <!-- <offline-allowed/> --> </information> <security> <all-permissions/> </security> <resources os="Linux" arch="x86"> <j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se"/> <property name="swing.noxp" value="true"/> <jar href="appx.jar"/> <nativelib href="lib/appx-nativelib.jar"/> <jar href="lib/capsapi_classes.jar"/> <jar href="lib/ckeditor_linux.jar"/> <jar href="lib/DJNativeSwing.jar"/> <jar href="lib/DJNativeSwing-SWT.jar"/> <jar href="lib/js.jar"/> <jar href="lib/jsoup.jar"/> <jar href="lib/outldd.jar"/> <jar href="lib/swt_linux_32.jar"/> <jar href="lib/SyntaxHighlighter.jar"/> </resources> <resources os="Linux" arch="i686"> <j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se"/> <property name="swing.noxp" value="true"/> <jar href="appx.jar"/> <nativelib href="lib/appx-nativelib.jar"/> <jar href="lib/capsapi_classes.jar"/> <jar href="lib/ckeditor_linux.jar"/> <jar href="lib/DJNativeSwing.jar"/> <jar href="lib/DJNativeSwing-SWT.jar"/> <jar href="lib/js.jar"/> <jar href="lib/jsoup.jar"/> <jar href="lib/outldd.jar"/> <jar href="lib/swt_linux_32.jar"/> <jar href="lib/SyntaxHighlighter.jar"/> </resources> <resources os="Linux" arch="amd64"> <j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se"/> <property name="swing.noxp" value="true"/> <jar href="appx.jar"/> <nativelib href="lib/appx-nativelib.jar"/> <jar href="lib/capsapi_classes.jar"/> <jar href="lib/ckeditor_linux.jar"/> <jar href="lib/DJNativeSwing.jar"/> <jar href="lib/DJNativeSwing-SWT.jar"/> <jar href="lib/js.jar"/> <jar href="lib/jsoup.jar"/> <jar href="lib/outldd.jar"/> <jar href="lib/swt_linux_64.jar"/> <jar href="lib/SyntaxHighlighter.jar"/> </resources> <resources os="Linux" arch="x86_64"> <j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se"/> <property name="swing.noxp" value="true"/> <jar href="appx.jar"/> <nativelib href="lib/appx-nativelib.jar"/> <jar href="lib/capsapi_classes.jar"/> <jar href="lib/ckeditor_linux.jar"/> <jar href="lib/DJNativeSwing.jar"/> <jar href="lib/DJNativeSwing-SWT.jar"/> <jar href="lib/js.jar"/> <jar href="lib/jsoup.jar"/> <jar href="lib/outldd.jar"/> <jar href="lib/swt_linux_64.jar"/> <jar href="lib/SyntaxHighlighter.jar"/> </resources> <resources os="Windows" arch="x86"> <j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se"/> <property name="swing.noxp" value="true"/> <jar href="appx.jar"/> <nativelib href="lib/appx-nativelib.jar"/> <jar href="lib/capsapi_classes.jar"/> <jar href="lib/ckeditor_win.jar"/> <jar href="lib/DJNativeSwing.jar"/> <jar href="lib/DJNativeSwing-SWT.jar"/> <jar href="lib/js.jar"/> <jar href="lib/jsoup.jar"/> <jar href="lib/outldd.jar"/> <jar href="lib/swt_win_32.jar"/> <jar href="lib/SyntaxHighlighter.jar"/> </resources> <resources os="Windows" arch="amd64"> <j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se"/> <property name="swing.noxp" value="true"/> <jar href="appx.jar"/> <nativelib href="lib/appx-nativelib.jar"/> <jar href="lib/capsapi_classes.jar"/> <jar href="lib/ckeditor_win.jar"/> <jar href="lib/DJNativeSwing.jar"/> <jar href="lib/DJNativeSwing-SWT.jar"/> <jar href="lib/js.jar"/> <jar href="lib/jsoup.jar"/> <jar href="lib/outldd.jar"/> <jar href="lib/swt_win_64.jar"/> <jar href="lib/SyntaxHighlighter.jar"/> </resources> <resources os="Mac OS" arch="x86_64"> <j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se"/> <property name="swing.noxp" value="true"/> <jar href="appx.jar"/> <nativelib href="lib/appx-nativelib.jar"/> <jar href="lib/capsapi_classes.jar"/> <jar href="lib/ckeditor_osx.jar"/> <jar href="lib/DJNativeSwing.jar"/> <jar href="lib/DJNativeSwing-SWT.jar"/> <jar href="lib/js.jar"/> <jar href="lib/jsoup.jar"/> <jar href="lib/outldd.jar"/> <jar href="lib/swt_osx_64.jar"/> <jar href="lib/SyntaxHighlighter.jar"/> </resources> <application-desc main-class="start.Appx"> <argument>-windowTitle=APPX Desktop JWS Client - $(host):$(port) PID:$(pid)</argument> <argument>-resizeMainWindowPane=true</argument> <!-- <argument>-screenRows=35</argument> --> <!-- <argument>-screenColumns=128</argument> --> <!-- <argument>-remotePort=1</argument> --> <!-- <argument>-remoteHost=www.example.com</argument> --> <!-- <argument>-rows=28</argument> --> <!-- <argument>-cols=110</argument> --> <!-- <argument>-useScrollNavBar=true</argument> --> <!-- <argument>-arrowScrollRegion=true</argument> --> <!-- <argument>-dockingScrollbar=false</argument> --> </application-desc> <update check="always" policy="prompt-update"/> </jnlp> [joe@webserver appx]$ appx.jnlp modificationsYou should change the following URL value in your appx.jnlp file to match your site. | |||||||
> > | codebase="http://www.abc-company.com/appx/" | |||||||
Changed: | ||||||||
< < | Towards the end of the appx.jnlp file, notice the application-desc elements with argument attributes of -windowTitle, -remoteHost ... You can add any APPX Desktop Client startup parameter that you normally find when you select Options, Advanced upon initially starting the APPX Desktop Client. | |||||||
> > | At the bottom of the appx.jnlp file, notice the application-desc elements with argument attributes of -windowTitle, -remoteHost, etc. You can add any APPX Desktop Client startup parameter to this section. To see the allowed parameter names, look under 'File->Preferences' after you have logged on. | |||||||
Changed: | ||||||||
< < | Table of possible element / attribute available to you in a JNLP file. | |||||||
> > | Table of possible element / attribute available in a JNLP file. | |||||||
| ||||||||
Line: 1699 to 1437 | ||||||||
[joe@webserver /]$ | ||||||||
Changed: | ||||||||
< < | Or, if you wish to modify an .htaccess file in your http://www.example.com/appx/ directory, and your web server is configured to allow .htaccess modifications then try the following syntax which will grep for the jnlp entry, and if not found will append an entry for jnlp support. | |||||||
> > | Or, if you wish to modify an .htaccess file in your http://www.example.com/appx/ directory, and your web server is configured to allow .htaccess modifications then try the following syntax which will grep for the jnlp entry, and if not found will append an entry for jnlp support. | |||||||
[joe@webserver /]$ *grep -qs 'application/x-java-jnlp-file' /var/www/html/appx/.htaccess || echo 'AddType application/x-java-jnlp-file jnlp' >> /var/www/html/appx/.htaccess* [joe@webserver /]$ | ||||||||
Line: 1743 to 1481 | ||||||||
| ||||||||
Changed: | ||||||||
< < | Comments: | |||||||
> > | Comments: | |||||||
Read what other users have said about this page or add your own comments.
| ||||||||
Deleted: | ||||||||
< < | -- JoeOrtagus - 04 Mar 2009 | |||||||
\ No newline at end of file | ||||||||
Added: | ||||||||
> > | -- JoeOrtagus - 04 Mar 2009 |