Below I'm pasting in some code to determine whether or not the browser has a specified version of the plugin or above.

My intended application is to use this transparently, displaying the 'real' applet in the body if the plugin meets the specified requirement and either using document.setLocation or popping up a new window to navigate users to the "Get Java" page if not.

I'm wondering if some of you would mind testing this out in whatever browsers you have handy. I'm not particularly concerned with supporting browsers more than a generation or two ago, but correct execution on most/all current browsers is important IMO.

I have dialup access, so I need to download some other browsers anyway but it will take a while. It does work on IE 6.

Anyways, one thing to watch out for is that if you compile your DetectPlugin class with the 1.4 javac, it might not run on older 1.1 VM browsers. I encountered this problem before, I think the javac -target option fixes it.

Here are my reasons for not liking the HTML converter, from what I've seen of it:

1. You have to hard-code the URL of a specific JRE binary that you require2. The HTML converter program does not know which JREs are available (or what directory they are in) which means you have to dig around and find it yourself3. The HTML converter *relies* on certain browsers not recognizing certain tags. This is prone to breaking your applet when, for example, Netscape starts recognizing the COMMENT tag the same way that IE does.4. Multi-browser support (and without using this option, why Java anyway?) requires a gigantic mess of HTML that is tricky to edit later on5. Using my method, you can check for the user's version of Java pretty transparently on any page of your website and direct them however you like -- IE you can provide your own customized instructions on what to look for on the "Get Java" page.6. Assuming this JavaScript/Java detection works on all or most browsers that can run Java, it is much less likely to break with future versions the browsers, since the JavaScript language is going to be backwards compatible whereas non-support for certain HTML tags is inherently not backwards-compatible7. This mechanism is a lot closer to the process for detecting and redirecting users depending on what version of Flash they have installed. The ease of doing that is something that Sun should be imitating by now

Here is what the HTML converter spit out automatically for the DetectPlugin class:

java-gaming.org is not responsible for the content posted by its members, including references to external websites,
and other references that may or may not have a relation with our primarily
gaming and game production oriented community.
inquiries and complaints can be sent via email to the info‑account of the
company managing the website of java‑gaming.org