Regarding Java 5

Hello everyone,

With the recent news that Java 6’s EOL (end-of-life) date is later this year, I think it’s time we start discussing Java 5, which was officially EOL’ed in October 2009.

As Java 5 gets more and more out-of-date, it becomes harder for us to support. I think that the time is rapidly approaching where we won’t be able support it anymore.

The question becomes: does anyone care? Who out there is running clients on Java 5, and why are you running such an old version?

I have clients running on Java 5! We have terminal servers that run Java 5 specifically for another program that only runs on a specific version of Java 5. I don’t know if they are out of business or why they won’t upgrade their software but our IT department refuses to run 2 versions of Java on the terminal servers.

I know it’s not really your problem but I’m kind of stuck with it for now at least.

This isn’t the first time I’ve heard this. I can’t fathom why they’re so terrified of running two versions of Java on the same machine - it works fine!

What is this other program? I’d say you should lean on them, but when it comes down to it, it is really the lack of willingness to run 2 versions that’s your real problem. Can you talk to IT, or have them talk to us? It’s not a very logical stance…

It seems a bit odd to me to run web app clients on a terminal server in the first place - let’s take our massively distributed system and run it centrally. Legacy support is usually the best reason - so they don’t have to maintain that legacy software on a number of workstations, possibly introducing security vulnerabilities. They may have a good point not wanting to install multiple Java versions on a terminal server since the installation process and effects are different from a typical workstation.

The best approach is to go back to IT and present the business requirement for to run a Java 6 or 7 app (Ignition) on whatever workstations - just like you have for the Java 5 based application requirement. I can’t imagine an IT department that would consider this to be unreasonable, particularly with a generous project timeframe. They might propose launching instances on the client via web browsers (like most users do), virtualizing just the application, bringing up another terminal server, upgrading the current one to support 2 JRE versions, or any number of possible solutions. I recommend having them contact Inductive Automation directly for technical questions. I think they will find that they have a wide range of options.

The program name is Demantra, I’m not very familiar with it because I don’t use it but the information I can find about it seems to indicate that it’s owned by Oracle which makes me wonder why they haven’t updated it to a newer Java version… This also makes me wonder if that’s really the problem or we just don’t want to spend the money to upgrade what we have.

I agree, but that’s what we have. A lot of people have actual PC’s but we have a lot of environments like waste water, rendering and Killing floors that PC’s don’t hold up in so I guess they figure that it’s cheaper to replace a winterm type device than a PC every few months. I think it also comes down to some people out in operations they just don’t trust with an actual PC, they can control the terminal environments a lot more than an individual PC environment.

I’ll see if I can get them to talk to you guys about it. What is your time frame for the Java 5 discontinuation?

We’re planning it for Ignition 7.5, which is probably about 3-5 months away. Of course, there’s nothing saying you have to upgrade right away though, so your timeframe may be longer.

Ok, so apparently there has been some movement on this. There is another project going on (not that I’m involved with) that needs java 1.6 on the terminal servers as well. Apparently today our IT department installed 1.6.17 on the terminal servers. I got an e-mail from them today that no one on the terminal servers could launch Ignition anymore and they would get this error:


I’ve never seen this before and it doesn’t make sense because everyone else is running java 6 with no problems. I’m running Ignition 7.3.3 b570. IT has unistalled Java 1.6.17 and it started working again. I wasn’t at work today so I didn’t get a chance to look into it personally but if you could give me a couple things to look at and we can get it working then I think my problem would be solved, for now at least. Thanks guys!

Edit:

I had them clear out the Java cache and restart the client from the gateway and they are getting the same error, but only when launching from a terminal. If IT launches from the server itself then it works fine, here is what they sent me:

[quote]Doug,

            Here are error logs that are logged when the error occurs under C:\Documents and Settings\%user%\.ignition directory. The strange thing is it seems to launch fine on the server when I’m not in a terminal session. The error only occurs when I’m in a terminal session on the server. 

[/quote]

launch_error_2012-03-28_07-49-45.log (2.61 KB)
launch_error_2012-03-28_07-49-46.log (2.61 KB)

I think that Java6 through the terminal session may have a proxy configured. Check the Java Control Panel’s network settings.

Yeah, we had figured it out. There were proxy settings that needed to be changed. We should be Java 5 free now, thanks!

So, back to the original question - is anyone else tied to Java 5 on an Ignition application that they need to eventually upgrade beyond 7.5?

Kronos, Maximo, Ultimus and indirectly still being stuck on WindowsXP have us stuck on Java5… But, I agree it is time to move on.