Phenote Webstart Troubleshooting


Webstart is a way of launching java applications from the web. Just click on a link and the application will download to your computer, and come up. Webstart is somewhat difficult, but I've got it working in some situations for Phenote. Future clicks on the link should recognize that you've already downloaded it, and will just bring up the downloaded application. If the application changes/upgrades on the server, this will be recognized and a click on the link will download the new upgraded application. So its more or less a web installer.  On the main phenote page there are links to the latest phenote webstart links to try.

The indication that a link works is that you get a popup that says "Java Loading", or something like that and then a bunch of files get downloaded and eventually the application actually comes up. For this to work with a browser, the browser has to recognize java webstart links, which have a jnlp suffix.  Macs tend to have webstart pre-installed on their browsers. Windows seems to as well. Linux does not and I don't know about Solaris. If its not working what you basically have to do is set up an association in the browser between whats called a mime type, which is "application/x-java-jnlp-file" in this case, and the webstart application, which you need to find on your computer(more on this below).

These are the steps I had to go through to get webstart installed on my Mozilla browser on Linux, which does not come with webstart pre-installed. 

First you need to see if you have webstart already installed on your computer. If you have java on your computer then usually webstart comes with java so you should have it. So if you have java you first need to find out where it is installed. In linux you type "which java" at the command line. For me this comes back with

/usr/lib/java/bin/java

You then need to make sure you are using java 1.5, phenote requires 1.4. Do a "java-version" at the command line. If you have anything less than 1.5, you need to install java 1.5, or if you have 1.5 installed somewhere (but its not the default) you need to find it and grab its javaws. If you try to webstart phenote with a java less than 1.5 nothing will happen and it won't even indicate that its the wrong java, you just have to know.

So what I found is in java 1.5 javaws is in both the bin and jre directory. So cd to /usr/lib/java and do a "ls jre" and "ls bin" (on windows "dir jre" & "dir bin") and look for a file called "javaws", which is the webstart application. The full path plus javaws is what you will need below. So for me its "/usr/lib/java/jre/javaws"

If webstart is not on your computer (or network) you can download it from(make sure its from java 1.5):

http://java.sun.com/products/javawebstart/download.jsp


Now that we've found the webstart application we are ready to associate it with a mime type in the browser. Here is how it is done in Mozilla on linux, I hope other browsers are somewhat similar.

Hit the "Edit" menu, and its "Preferences" sub menu to get the Preferences dialog.  Expand the "Navigator" category, and under that click on "Helper Application", which is where mime types get associated with applications. Click the "New Type" button, which brings up a New Type dialog box. In the "MIME Type" field enter "application/x-java-jnlp-file".  Under "Description" you can just put "Java Webstart". Under "Extension" put "jnlp". Click on "Open it with:" and in the associated field either entor or browse for the location of webstart on your computer. This is what you were digging for above. For my computer I enter "/usr/lib/java/jre/javaws", the location of my webstart app. then deselect "Always ask me before handling files of this type", as who wants to keep being asked, and hit "OK" and hit "OK" as well in the Helper Applications dialog.

You now need to restart your browser for it to pick up the new mime type association for webstart and hopefully the above link should now work.

One thing thats also handy if there are problems bringing up webstart is to bring up the browsers java console (this may not be supported by all browsers). This should give some feedback on things happening behind the scenes of the webstart application, so its good for trouble shooting. In mozilla this can be brought up with menu
Tools->Web Development->Java Console.