[9] Review request: 8177566: FX user module gets IllegalAccessException from sun.reflect.misc.Trampoline

Kevin Rushforth kevin.rushforth at oracle.com
Tue May 2 15:09:39 UTC 2017


I presume you are talking about the short description I added to the 
beans classes and to the select binding methods (and, for that matter, 
the *PropertyValueFactory classes)? I agree that it does seem a bit 
terse, so you are right that developers may have a hard time 
understanding it.

Without duplicating the "deploying an application as a module" section 
from the Introduction to FXML -- which would seem out of place in a 
JavaBeansXXXX class description or a selectXXXX() method description -- 
can you think of a good way to make it more clear?

Btw, the following is the IAE exception that will be thrown:

java.lang.IllegalAccessException: class 
com.sun.javafx.property.MethodHelper cannot access class com.foo (in 
module foo.app) because module foo.app does not open com.foo to javafx.base

This is basically the same IAE message that would happen if we were to 
invoke the method directly.

-- Kevin


Alan Bateman wrote:
> On 02/05/2017 01:21, Kevin Rushforth wrote:
>
>> This review is being cross-posted to both openjfx-dev and jigsaw-dev.
>>
>> Please review the proposed fix for:
>>
>> https://bugs.openjdk.java.net/browse/JDK-8177566
>> http://cr.openjdk.java.net/~kcr/8177566/webrev.00/complete-webrev/
>>
>> Details of the fix as well as notes to reviewers are in the bug 
>> report [1] (e.g., I've also generated separate webrevs for the fix 
>> itself, the doc changes, and the test changes).
> Overall I think the approach is okay but I wonder how easy it will be 
> for joe developer to understand. By this I mean the description in the 
> javadoc is lengthy and I wonder if it might be better to split up the 
> two "solutions" so that it the choice is clearer. Related is that the 
> IAE thrown by MethodHelper.invoke could make it clear that the package 
> is not exported.
>
> -Alan.


More information about the jigsaw-dev mailing list