-
Bug
-
Resolution: Fixed
-
P2
-
9, 9-repo-jigsaw
-
b155
-
Not verified
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8174647 | 10 | Sergey Bylokhov | P2 | Resolved | Fixed | b01 |
UIDefaults::addResourceBundle(String bundleName) is a public API that application can call it to load any resource bundle. This method is also used by the desktop implementation to load its internal resource bundles.
This method should be examined how to work with modules and with resource encapsulation. Currently there is no way to determine if UIDefaults::addResourceBundle("sun.awt.resources.awt") is called from application or from java.desktop.
One option is to keep UIDefaults::addResourceBundle method be used only be applications so that it will only load bundles from unnamed module (i.e. classpath). java.desktop can use a private method to register the bundle name to be loaded that it will call ResourceBundle.getBundle(baseName, javaDesktopModule).
This method should be examined how to work with modules and with resource encapsulation. Currently there is no way to determine if UIDefaults::addResourceBundle("sun.awt.resources.awt") is called from application or from java.desktop.
One option is to keep UIDefaults::addResourceBundle method be used only be applications so that it will only load bundles from unnamed module (i.e. classpath). java.desktop can use a private method to register the bundle name to be loaded that it will call ResourceBundle.getBundle(baseName, javaDesktopModule).
- backported by
-
JDK-8174647 Examine UIDefaults::addResourceBundle(String bundleName) with resource encapsulation
-
- Resolved
-
- relates to
-
JDK-8173818 [PIT] failure of javax/swing/UIDefaults/8149879/InternalResourceBundle.java
-
- Closed
-