Hi Kyle

Now I get this:
[apt] Compiling 2 source files to C:\eclipse\workspace\ch-amazon\target\test-classes
[apt] warning: Annotation types without processors: [org.apache.beehive.controls.api.events.EventHandler]
[apt] C:\eclipse\workspace\ch-amazon\src\test\org\controlhaus\amazon\AmazonClientTest.java:102: No event method with
matching name and signature found on EventSet: org.controlhaus.amazon.AmazonClientControl.AmazonCallback
[apt] public void handleFault( XFireFault fault )
[apt] ^
[apt] C:\eclipse\workspace\ch-amazon\src\test\org\controlhaus\amazon\AmazonClientTest.java:93: No event method with
matching name and signature found on EventSet: org.controlhaus.amazon.AmazonClientControl.AmazonCallback
[apt] public void endInvoke( XmlObject[] response, XmlObject[] responseHeaders )
[apt] ^
[apt] 2 errors
[apt] 1 warning


Maybe it is not recursing down into the parent interface to look for the method names? I will open a JIRA issue though. Thanks,

- Dan

Kyle Marvin wrote:

Dan,

I suspect that this is a bug.  As I understand it, you are saying that
the two interfaces looks something like:

@ControlInterface
public interface XFireControl
{
     @EventSet
     public interface EndInvokeCallback { ...  }
}

and

@ControlExtension
public interface AmazonClientControl extends  XFireControl
{
     ...
}

Try adding the following inside AmazonClientControl:

       @EventSet
       public interface AmazonCallback extends EndInvokeCallback{}

and then change your @EventHandler refs to:

        @EventHandler(field="amazon",
                 eventSet=AmazonClientControl.AmazonCallback.class,
                  eventName="endInvoke")

If this works, then you are running up against a bug where the
validator for the EventSet attribute of @EventHandler is not properly
finding ones declared on the (parent) ControlInterface.   Please open
a JIRA issue and I think I can run it down pretty quickly, but the
above will give you a short-term workaround.

-- Kyle


On Tue, 04 Jan 2005 15:21:47 -0500, Dan Diephouse
<[EMAIL PROTECTED]> wrote:


Howdy,

I'm working on the XFire control a bit more and I am having troubles
using events from a control which extends it.  In this case I have the
AmazonClientControl interface which extends the XFireClientControl
(which implements Extensible).  Here's how I declare my EventHandlers:

   @EventHandler(field="amazon",
                 eventSet=XFireClientControl.EndInvokeCallback.class,
                 eventName="endInvoke")
   public void endInvoke( XmlObject[] response, XmlObject[]
responseHeaders )
   {
       receivedResponse = true;
       this.response = (ItemLookupResponseDocument) response[0];
   }

   @EventHandler(field="amazon",
                 eventSet=XFireClientControl.EndInvokeCallback.class,
                 eventName="handleFault")
   public void handleFault( XFireFault fault )
   {
       receivedResponse = true;
   }

However, APT gives me this:

   [apt] Compiling 2 source files to
C:\eclipse\workspace\ch-amazon\target\test-classes
   [apt] warning: Annotation types without processors:
[org.apache.beehive.controls.api.events.EventHandler]
   [apt]
C:\eclipse\workspace\ch-amazon\src\test\org\controlhaus\amazon\AmazonClientTest.java:102:
Cannot find EventSet interface:
org.controlhaus.xfire.client.XFireClientControl.EndInvokeCallback
   [apt]     public void handleFault( XFireFault fault )
   [apt]                 ^
   [apt]
C:\eclipse\workspace\ch-amazon\src\test\org\controlhaus\amazon\AmazonClientTest.java:93:
Cannot find EventSet interface:
org.controlhaus.xfire.client.XFireClientControl.EndInvokeCallback
   [apt]     public void endInvoke( XmlObject[] response, XmlObject[]
responseHeaders )
   [apt]                 ^
   [apt] 2 errors
   [apt] 1 warning

There is an @EventSet attribute on the EndInvokeCallback interface, so I
am very confused as to why this is happening... Any ideas?

- Dan

--
Dan Diephouse
Envoi Solutions LLC
http://netzooid.com






--
Dan Diephouse
Envoi Solutions LLC
http://netzooid.com



Reply via email to