VMware Communities
thorsfall
Contributor
Contributor

JavaFX 8 apps don't render correctly under OS X 10.10 and 10.11 running on VMware Fusion 8 or ESXi 6

Firstly, let me state that this is not a thread about running Apple's OS X on non-Apple hardware - I have a genuine Apple Mac Mini running ESXi 6.0 (Build 3073146).  The issue is also reproducible on VMware Fusion 8 running on an Apple Mac Book Pro 15".

The Issue

It seems that Oracle's update to JavaFX 8 (part of Java :smiling_face_with_sunglasses: have broken something to do with rendering on Apple OS X 10.11 (El Capitan) and 10.10 (Yosemite).  If you start a JavaFX 8 application with prism.order=j2d then it seems that the fonts are rendered completely screwy (as in, entirely the wrong characters) are displayed.

JavaFX 8 Font Issue.png

It seems that you can get around this issue by specifying prism.order=es2,sw but this then results in a problem where the contents of menus is not displayed in VMs (the menu contents appear fine on a physical mac).  A drop-down menu should be open in the screenshot below, but isn't even rendered:

JavaFX 8 Font Issue 2.png

This is presumably the difference between the GPU (es2) used on a physical Mac, and the software renderer (sw) is used on VMware virtual machines.  There appears to be only line of error text output when this issue occurs:

CGLCreateContext error: 10002

This issue, along with a very basic and reproducible test case have been documented (by someone else) on Stack Overflow.

dariusd has previously been of great assistance in these areas, so I thought it only right to start a new discussion thread for the issue, as there doesn't seem to be one with any kind of detail yet.  Is anyone else experiencing this?  Anyone solved the issue with getting JavaFX 8 rendering to work correctly in a VMware virtual machine?

Reply
0 Kudos
8 Replies
thorsfall
Contributor
Contributor

*bump*

Reply
0 Kudos
bergr01
Contributor
Contributor

Hello VMware gurus, any comments/insights on this issue? It is affecting me as well in my product testing at the moment.

Reply
0 Kudos
mini2008
Enthusiast
Enthusiast

It seems like a bug in JVM, [JDK-8096072] javafx applications crash when starting up on os x running in vmware - Java Bug System.

VMware is not a certified hypervisor according to official documentation for JavaFX JavaFX Supported Configurations.

Hope helpful~

Reply
0 Kudos
Mikero
Community Manager
Community Manager

Interesting...

dariusdfubvmware Can we look into this?

-
Michael Roy - PM/PMM: Fusion & Workstation
Reply
0 Kudos
thorsfall
Contributor
Contributor

Any news on this one? dariusd

Reply
0 Kudos
Mikero
Community Manager
Community Manager

Darius is kinda busy at the moment, apologies.

As for this issue, we can't actually fix it. It's in Oracle / Java's hands to fix.

The issue persists with all virtualization platforms, so it's really not something we're in a position to address. It has to be fixed at the source.

-
Michael Roy - PM/PMM: Fusion & Workstation
Reply
0 Kudos
thorsfall
Contributor
Contributor

There is probably still some advantage to tracking down the source of the error (presumably emulation of 3D video hardware) and updating an Oracle Support ticket (I assume VMware have a better relationship with Oracle than the general public) or the OpenJDK ticket (which seems to have been rejected).  There may even be a solution in VMware's handling of 3D video hardware, making you the only virtualisation platform that could be used for Mac development & testing. Smiley Happy

Reply
0 Kudos
ColoradoMarmot
Champion
Champion

There's been issues in the past with Java on OSX expecting 3d acceleration to be present - if that's the root cause here, we're likely out of luck.  no virtualization platform provides 3d acceleration for OSX guests.

Reply
0 Kudos