JDK-8138652 : [macosx] New WebView Native Code uses private Apple APIs
  • Type: Bug
  • Component: javafx
  • Sub-Component: web
  • Affected Version: 8u60,9
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: os_x
  • Submitted: 2015-09-30
  • Updated: 2020-01-31
  • Resolved: 2017-02-10
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 8 JDK 9
8u151Fixed 9Fixed
Related Reports
Duplicate :  
Relates :  
Relates :  
Description
The new update to the QTKit code for JavaFX Web View uses some APIs that apple considers "private."

    ubrk_getRuleStatus
    ubrk_setUText
    ucnv_getCanonicalName
    ucnv_reset
    ucol_strcollIter

If you do some web searching you will find some QTWebKit bugs and blog posts that provide instructions for a Mac App Store "clean" way to build it, so it can be fixed.

Right now packager has to remove the dylib, much in the same way the media libraries were excluded for QuickTime APIs.
Comments
Changeset: 9bdcf1b4cc72 Author: ghb Date: 2017-02-10 09:12 +0530 URL: http://hg.openjdk.java.net/openjfx/9-dev/rt/rev/9bdcf1b4cc72
10-02-2017

Build failure is resolved. +1
09-02-2017

I get build failures with your patch applied. These will need to be resolved before we can proceed. I am compiling on Mac OS X 10.9.5 which matches our production build machines.
08-02-2017

+1
07-02-2017

lgtm
06-02-2017

webrev : http://cr.openjdk.java.net/~ghb/8138652/webrev.00/ Root cause : We were dynamically linked native library "libicucore.dylib" provided by OS X framework. Some of the API (mentioned in Description) are public. This restricts our javafx bundled with native webkit library getting rejected from app store. Solution: Use statically linked lib icu (which we are doing for windows and linux) with native webkit.
25-01-2017

If this is fixed in 8u then please file a bug against the Java Packager to not strip out libjfxwebkit.dylib
05-05-2016

Issue blocks app submission to Apple (Mac) app store.
05-05-2016