Roman Kennke wrote:
> Am Donnerstag, den 26.01.2006, 14:28 +0100 schrieb Roman Kennke:
> > Hi Stuart,
> > 
> > this is really interesting, thanks!
> > 
> > I found something which might be a bug in Japi. The reverse 
> Japi points
> > out the following:
> > 
> > field
> > 
> javax.swing.JTree.AccessibleJTree.AccessibleJTreeNode.accessib
> leParent:
> > missing in jdk15
> > 
> > However, looking at our sources I couldn't find such a field in
> > classpath either. So why does japi think there is such a field?
> 
> A little update on that one: the field accessibleParent is obviously a
> field that is inherited from AccessibleContext. Is it possible that in
> Sun's API this field is shadowed by a private field in
> AccessibleJTreeNode?

That's exactly what is happening. Oddly enough I think that Japi is
correct, to be fully source compatible we also need to add a private
accessibleParent field to AccessibleJTreeNode.

I've attached an example that compiles against the JDK 1.5 libraries
(with the Eclipse Java Compiler), but fails against Classpath. Note that
javac produces broken code when you compile this file. Note also that in
the correct compilation accessibleParent actually refers to
tree.accessibleParent, not node.accessibleParent.

It's really amazing how complex the seemingly simple Java language is...

Regards,
Jeroen

Attachment: shadow.java
Description: shadow.java

Reply via email to