[ https://issues.apache.org/jira/browse/POLYGENE-249?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16009240#comment-16009240 ]
Niclas Hedhman commented on POLYGENE-249: ----------------------------------------- My gut feeling is that this is related to classes reside in "Class Spaces", which is effectively the classloader hierarchy in Polygene case with the FragmentClassLoader at the 'bottom'. I think I need an experiment on this. > private and package protected types are not accessible when the should be. > -------------------------------------------------------------------------- > > Key: POLYGENE-249 > URL: https://issues.apache.org/jira/browse/POLYGENE-249 > Project: Polygene > Issue Type: Bug > Reporter: Niclas Hedhman > > The FragmentClassLoader creates new subclasses (_Stub) in the same package as > its superclass. Yet, the classloading of a > {code:java} > package org.apache.polygene.abc; > class Abc > implements SomeType > {} > {code} > will insist that the Abc.class is public or protected and that the > SomeType.class is public. Otherwise an IllegalAccessException is thrown. > {code} > java.lang.IllegalAccessError: class org.apache.polygene.abc.Abc_Stub cannot > access its superclass org.apache.polygene.abc.Abc > {code} > and > {code} > java.lang.IllegalAccessError: tried to access class > org.apache.polygene.abc.SomeType from class org.apache.polygene.abc.Abc_Stub > {code} > This is probably because the FragmentClassLoader is doing something wrong > regarding packages. Maybe it is not enough to give the right name to the > class, but also have to put in some type of package reference. > The work-around is more 'public' and 'protected' fragment types, but that is > not ideal. -- This message was sent by Atlassian JIRA (v6.3.15#6346)