Jess--

  Heh...that's a pretty interesting problem.  After looking at the
repro, it seems like this is the case that doesn't work:

src/
  a/
    FooControl.java
    FooControlImpl.java
  b/
    FooControl.java
    FooControlImpl.java
  ControlClient.java

where ControlClient has something like:

  @Control
  private FooControlBean _fooControl;

If I understand this correctly, the problem is that the
ControlClientAnnotationProcessor takes a best guess when it can't find
an exact match for the name of the Control's interface type.

  An "interfaceHint" attribute would allow the AP a chance to resolve
the type if the type isn't otherwise available from the field's
declaration.  The above example would then look something like:

  @Control(interfaceHint=a.FooControl.class)
  private FooControlBean _fooControl;

This would give the AP an "out" (if you will) to handle cases like that above.

I'm fine making this addition -- thoughts from anyone else?

Eddie

Reply via email to