Thursday, 5 February 2015

EPM - Java versions and why Windows Server 2012 is not correctly recognised

Today’s post looks at an issue with not correctly picking up Windows 2012 and explores the reasoning behind it.

If installing EPM on Windows 2012 Server the following OS information is shown in the installer prerequisite checks:

So the installer picks up the operating system as “Windows NT (unknown)” which I did mention in my post about the installation and configuration.

This has a knock on effect as when you configure the EPM Registry the same values are written to the registry.

Running the deployment report outputs the same information as it is read from the EPM registry.

So why is this happening? Well we will need to look closer at the versions of Java being deployed with, Java being an integral part of EPM.

I think it’s worth highlighting the versions of Java automatically that are deployed with each release of 11.1.2

Each release up to has been 12 months apart and in every case the versions of Java have been updated.

So how about which was released nearly two years after, you certainly would expect later releases of Java to be deployed.

Worryingly the versions are exactly the same as the previous release.

Even more concerning is the warning message you receive when trying to download a version of Java 6.

“WARNING: These older versions of the JRE and JDK are provided to help developers debug issues in older systems. They are not updated with the latest security patches and are not recommended for use in production.”

It stands out even further when you look at the Java release update table to see how far behind is.

The last public update for Java 6 was update 45 was way back at the beginning of 2013 and update 35 which is using was released in August 2012.

Just this month the pre-release of Java 9 was made available.

There have been a huge amount of security fixes since the versions of Java in and on this world we live in, security should be taken extremely seriously.

In fact it’s not just the versions of Java that have remained static as it is the same story across the middleware components.

I understand that middleware components which are installed with do support Java 7 so it seems strange why this version was not introduced

Anyway let’s get back to the reason why the OS is being picked up incorrectly.

The Java code behind EPM uses the System class and Properties object to generate OS information, if you want more detailed information then have a look here.

I wrote a simple Java program using the and os.version keys to output OS information like generated in EPM.

First using the EPM Java JDK version.

As you see it is generating incorrect information, now using a later JDK 7 release.

So this highlights it is the down to the version of Java which is causing the issue.

I looked into this further and noticed that this issue was resolved in Java 6 Update 38.

Update 38 was released in December 2012.

As a test I thought I would start up the EPM installer using a later version of Java but first checked out the version being used.

The version of Java that the installer uses is 6 update 29 which is even older than the version that is deployed.

Using a later version of Java the operating system information is now generated correctly, please not this was just a test and I don’t suggest trying to install or configure with different versions.

If you are interested in updating the registry so the OS information is correct then you can simply use the EPM system registry tool.

The above is based on a single host but can easily updated against multiple hosts.

Once the registry is updated the registry and deployment report will display the correct information.

From an infrastructure perspective if you take HFM out of the picture,  is really in disguise :)


Celvin Kattookaran said...

I like the last quote in disguise (with a black ribbon on workspace)

Nicolas said...

I like the quote too, but actually I think it's what should have been from the start ;)

Abe said...

I can't seem to get Oracle Support to understand what I'm asking for so I'm posting here to see if you've come across this:

With EPM you were not able to launch the EAS Console via a web browser if Java 7 was the only version of Java on the desktop where the browser was running. Oracle release a patch to address this as documented in Note 1594567.1 and it fixed the issue. It didn't change the version of Java on the server but enabled EAS Console to be launched via a browser with Java 7 on the desktop.

Now with EPM I'm running into the same issue but with Java 8 on the desktop.

Oracle support is giving me the usual push back that Java 7 update 3+ is what is on the certification matrix and that Java 8 is not certified on the server, etc.

Have you or anyone else reading this blog tried to launch EAS Console via a browser with Java 8 on the desktop and run into the same problem described in Note 1594567.1? If so, can you please log an SR with Oracle?

Perhaps if more people ask for this to be fixed Support might pay attention and log a bug with Development.

John Goodwin said...

Hi Abe,

Unfortunately Java 8 is not in the support matrix so there would be no point in raising an SR, maybe in a future patch set it will be supported.
At the time of writing this the supported JRE list is:
JRE Plug-in 1.6.0_35+
JRE Plug-in 1.7.0_07+

Ale P said...


I very much agree with what you mentioned during the post re: the importance for companies to manage security concerns.

I'm a bit worried that, almost a year later, Oracle is not supporting JRE 1.8 and the situation is exactly the same. Not only that, but when approaching oracle I understand as of today there is not even a plan for this to change.

I don't know if it was at the back of my SR or if because many customers have raised key specific concerns but at least there seems to be a bug for it now "Bug 22469663 - JRE 1.8 SUPPORT FOR HYPERION" (unfortunately I'm unable to gather more details at present).

A couple of questions to John & others :

- Is JRE needed/used on clients ? Specially on Workspace and FR - Planning, Capex and Profitability and Cost Management. Or is it mainly required on server for installation & config ?
- Has anyone thoroughly tested JRE 1.8 ? Any known issues ?

Thanks a lot,