My fathom server is running on Windows Server 2008 R2 Enterprise, but it is showing as Windows Vista (refer to attached). May I know what could be the problem? I suspect is the programming language API call retrieving the wrong value.
The short answer is that it's a bug. It looks like the code that displays the OS version wasn't updated when Windows 7 and Windows Server 2008 R2 were released.
The long answer is that Windows doesn't provide a simple way to retrieve this information. There's no function that just returns a string that tells you what version of Windows you're running. You have to construct it yourself from the version information you can get, which is a set of numbers that don't always seem to relate to the actual version you're using. For example, Windows Vista is version 6.0. Windows 7 is version 6.1. Windows Server 2008 R2 is also version 6.1 but there's a flag in the version information that tells you that it's a server product so you know that it's Windows Server 2008 R2 instead of Windows 7.
They keep trying to make it easier but they only seem to make it worse. Windows 8 is version 6.2. Windows 8.1 is also version 6.2 unless you build your application a certain way, in which case you get to use a whole new set of functions with names like IsWindows8OrGreater and IsWindows8_1OrGreater.
My answer was more to explain why it's hard to get this right than to point to a specific component as being at fault. Since Windows doesn't provide the version information in the form of a character string, programs which display version information have to generate the strings themselves based on the version numbers provided by Windows. This means that when Microsoft releases a new version of Windows existing software can't report its name until the software is updated.
If changing which Java you use changes the reported version of Windows it sounds like it's an issue in Java, but I can't say that for sure.
Sonic gets the OS info in a different way than OEM does. If you want report a bug for Sonic, you would need to do it with Aurea. But they are 100% java product, so the bug is most likely java related. You can try that yourself using different versions of java and see what os.version is being reported there. Also FYI - bugs.java.com/view_bug.do
With regards to OP (eg OEM) as Matt said, this is a bug. It's being planned to be addressed (all the caveats etc apply here) in 11.4.
Thanks for all your explanations, testing and suggestions.
I know OE does came with its own bundled set of JRE. Does OpenEdge Explorer uses JRE in OE directory? (Have not studied "\OEManage\bin\fathom.bat" thoroughly.)
Assuming so, I have done a test on my development environment (Windows 7) with OE JRE (1.5.0_11) and system JRE (1.5.0_22)(installed this version deliberately), refer to screenshot below:
Since JRE (1.5.0_22) works correctly, can I safely replace the whole of OE JRE folder with JRE (1.5.0_22) to solve the OS version issue?
You can. But I don't believe it will help. There is a processing behind prior displaying the OS in the OEM console.
I have shutdown fathom, replaced OE JRE with JRE (1.5.0_22), startup fathom, using browser private browsing, but still displaying the wrong OS version. Have not tried restarting the server though.
Tai Li, maybe I wasn't clear in my previous entry - my apologies - it won't help, it is a bug and until it gets fixed, there's I am afraid not much you can do about that.
Hi Libor Laubacher, you're very clear in your entry, just that I would want to try and find out myself. Seems like I'll have to wait for the bug fixes then. Thank you.
Any idea when this bug will be fixed? Or where can I find the link to bug tracker for Progress?
Actually the bug I was talking about is related Windows 8.1 (it would still say Windows 8). In your case (since you are not on Windows 8.1) this has been already fixed in 11.2+, so upgrading to 11.3 (or 11.2) would display the OS version correctly.
Hi Libor Laubacher, thank you.
I have tested with OE 11.3 (evaluation), and the OE Explorer 11.3 works as expected (refer to screenshot below):
Now the question is, can I install just the updated (OpenEdge Manager) OEM 11.2+ component? Or I must upgrade to OE 11.2+ entirely?
I believe you just installed it :) The question is - what is it you intent/plan/want to do with it ? Is this only one machine? Or do you plan to manage more machines (remotely) with it? If so, what versions do you have on the remotes ... etc. A bit more info about your goal and setup is needed to answer your question.
Maybe you can open a new thread for that as well, so the problems/questions won't get mixed up.