Java version?

What version of Java should be installed for FactorySQL and FactoryPMI? I have both version 5 update 11 and version 6 update 2 installed - everything seems to work fine, but the Java logo on the FactoryPMI launch page still has a red cross on it.

I believe that any version of 1.5 is “acceptable” (green) for the logo applet. If you click on the logo it should open a window that shows the version it detects. Which browser are you using?

On my computer Internet Explorer shows red as it detects 1.6 and Firefox shows green as it detects 1.5. The best way to tell is to go to Help->About FactoryPMI in the runtime and check the version. My computer it runs 1.5.0_10 when launched from either browser, but I set Java to not run 1.6 for jnlp applications in the Java control panel.

Hi Nathan,

I realise now that FactorySQL doesn’t use Java at all :blush:

When I run the FactoryPMI Launch Page in either Internet Explorer or Firefox and click on the Java icon (I didn’t realise you could do that!), it detects 1.6.0_02 and says ‘Your version of Java isn’t acceptable. Please upgrade’. This message is maybe a bit misleading. Is there a reason the system doesn’t like version 1.6? I can launch any system or the FactoryPMI Designer and they run perfectly, using 1.5.0_11.

Under the Java Application Runtime Settings, I have both 1.5 and 1.6 enabled on the User tab, but only 1.6 is shown on the System tab (it is enabled also). Is this normal? I managed to get in a bit of a mess when I deleted Java 1.5 (well, it had obviously been replaced by 1.6, right?) and had to completely reinstall 1.5, 1.6, FactorySQL and FactoryPMI before everything worked again.

btw, the times shown on the forum seem to be about half an hour slow - do you see this at your end?

Al

Also, my Java Applet Runtime Settings only include version 1.6.0_02 - running a system as an Applet works perfectly, with the Help showing that it is indeed running version 1.6.0_02 :confused:

FactorySQL is written in .NET. We use MS because of OPC (OLE for process control). OLE is object linking and embedding, Microsofts inter-program communication protocol. We’re all looking forward to when the platform independent OPC-UA (unified architecture) becomes mainstream. It features much more modern standards. Think web services, XML, etc as opposed to COM.

We’ll probably upgrade the detection utility with the next release of FPMI. The current one was written prior to 1.6. I think that you want to run version 1.5 of the JRE. I hope my memory serves me well, but here goes - I think Sun introduced a bug that occurs during “serialization” in 1.6 where their “fix” is to wait for the next major version of the JRE. This creates a problem when saving your project in the designer. I’ve never heard of any client runtime issues with 1.6.

Upon further investigation, FactoryPMI (using JWS) seems to launch Java 1.5. When I disabled 1.5 in the Java control panel it launches an applet to help me install 1.5. Also, in the Java Console I show Java Web start version 1.6 Using JRE version 1.5.

You’re right about applets running 1.6. I think that was one of the things that was improved with that version. You can’t damage anything by running the runtime - it’s more a matter of the program working or not. You should be fine running applets that way.

You’re correct. The computer running this forum seems to be about a half hour off. I’ll look into that.

I think with my messing about with Java I’ve managed to break something. When I try to start any of my systems in Windowed or Full Screen modes, they display an Application Error - Unable to launch the application. The Details/Exception entry reads as follows:

java.lang.ClassNotFoundException: com.calmetrics.factoryhmi.application.runtime.RuntimeJWS
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at com.sun.jnlp.JNLPClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

The only thing I can think I have done is delete what looked like duplicate entries for each project in the Temporary Internet Files list - I deleted the oldest entry for each project. I can still open the projects in FPMI Designer and run them as Applets.

Any ideas?

FactoryPMI needs 1.5. We’re anxious to move to 1.6, but we’re waiting on Sun to fix an issue.

The fact that the detection applet says that you need to “Upgrade” when it sees 1.6 is an oversight on our part.

You can run 1.5 and 1.6 side by side. When you uninstalled 1.5, you removed the JRE that the Gateway knew about (detected on installation), effectively pulling the rug out from under the Gateway - I imagine it never started again.

There are client issues running in 1.6. Applets may be unaffacted. We recommend 1.5 for the time being.

This is when you’re launching the client in windowed mode? I’ve never seen this before. It almost looks like the JAR files that are used in launching are missing. what are the contents of this directory?

C:\Program Files\Inductive Automation\FactoryPMI\tomcat\webapps\gateway\lib

Try clearing your Java cache - under the Control Panel, choose Java, and Delete Files. Then restart IE and try again.

Yes, both Windowed and Full Screen modes. All the jar files are in the directory you highlighted.

When I cleared the Java cache everything went back to normal. Any idea why there was more than one entry for FPMI Designer and for each project?

Thanks for your help.

Java must have been caching bad/corrupt versions of the JAR files. As for the multiple instances, you will get a different instance for the windowed app vs the full screen app, and you’ll get a different one if you launch from different gateways.