Java version compatibility

Folks, I’ve got a new issue. You’ve all been so good to help with my past problems that I’m hopeful I can get some advice from you on this one.

Where I work, we’ve been using Java to create applets. Typically with version 1.4 via the swing API. I’m getting into the game development scene, but to be honest, most of these problems are coming from business apps. I’ve been really good to code to Java standards, but now with some of our companies new utility apps, my stuff is getting pounced on. Specifically, our companies new travel app (Extensity) and our server firewall app (eTrust Firewall), both require different versions of Java (Extensity actually REQUIRES the Microsoft JVM, and eTrust Firewall admin requires a specific version of Sun Java 1.3). Now that I’m thinking about it, even HP’s secure web consoles required the Microsoft JVM.

So here’s the real problem. Users are completely confused when they can’t load my applets. I know that it’s because they’re running an out-of-date version of the JVM, but if I have them upgrade, then their business utilities don’t work. I understand the issues with the Microsoft JVM, but what about Java 1.3.1? Shouldn’t 1.4 be able to handle the same apps? Is there some sort of work around for this?

I’m concerned that as I release some of these games I’m working on, that users will have a hard time running them because of all the Java version conflicts out there. Or what if a newer version of Java is going to break compatibility with some API call I “back in version 1.4?”

Interesting, and this is why Sun were so peeved at MS. This problem actually came up today for me…

On the version of IE that I’m running (6 something or other) you can, in the advanced options, turn off the SUN Java VM and resort back the MSVM. Although not perfect this should allow support for both “types” of app.

Kev

Are there any specifications regarding what the MS JVM supports? I hope the Sun JVM provides all Java features (is this even true ??? or does the Sun JVM also not behave as specified?), but I have no idea what the difference between the MS and Sun JVMs is.

Is it possible to develop for both ???

(Or should I just use WebStart?)

[quote]On the version of IE that I’m running (6 something or other) you can, in the advanced options, turn off the SUN Java VM and resort back the MSVM. Although not perfect this should allow support for both “types” of app.
[/quote]
I don’t understand (I am usually slow :-[).
By turning of the Sun JVM, don’t you lose support for, in elias4444’s case, the eTrust Firewall, which requires Sun Java?

Sounds like you need to scream at your firewall vendor for building a dependancy in to a non-standard VM.

Eeek! You thought I was advocating use the MSVM and only the MSVM! No No!

I simply meant that when the user wants to use one thing get them to swap VM, and vice vesa.

Kev

We had one thing wich needed the MSVM and one thing wich needed a correct vm. So… we just disabled the sun vm, therefore all thingies runs with the MSVM and the other applet just used tags wich especially asked for the sun vm (thus overriding the defaulted MSVM).

However, generally Applets suck and are damn annoying. Use webstart were you can.

oNyx, could you give me an example of the code for the or tag?

Well, there is a little tool to generate em out of applet tags automatically :slight_smile:

http://java.sun.com/products/plugin/1.2/converter.html
http://java.sun.com/products/plugin/1.3/converter.html
(I used the 1.2 thing)

java HTMLConverter

-pick the html file with the applet tags you want to change to object/embed tags
-convert

and… that’s it :slight_smile:

It doesn’t seem easy using those when the web page is dynamically generated though. ???

Any thoughts?

-generate it once (open the page with your browser)
-save the page
-run over it with the converter
-open it
-search for the tag
-copy
-paste

:slight_smile:

[quote]Eeek! You thought I was advocating use the MSVM and only the MSVM! No No!
[/quote]
You read my mind - but I didn’t read yours. My apologies :-[.

[quote]I simply meant that when the user wants to use one thing get them to swap VM, and vice vesa.
[/quote]
I see :slight_smile: