PS: Since JSR-181 also states that "(...) the service implementation
bean should not include any JSR-181 annotations other than
@WebService.endpointInterface and @WebService.serviceName [when an
endpoint interface is used]" (p. 11), I would like to suggest the
processor generate a warning in case there are any annotations such as
@WebMethod in the implementation bean and the bean refers to an endpoint
interface.

Cheers,

-michael

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, October 12, 2004 7:33 AM
To: Beehive Developers
Cc: Jonathan Colwell; Michael Merz
Subject: Re: @SecurityIdentity, @SecurityRoles

Hi Michael,

> Does that code check whether the implementation bean implements all
the
> methods specified in the endpointInterface, yet? Also, are there any
> test cases to check whether that's those check work? That would be
cool
> to have, too -- just in case you get bored ;) Thanks much.

I'd been thinking how to implement this mechanism because some parts are
somehow tricky.

If an endpoint interface has a method "public int dropMoney(int
amount)", it should be 
exposed in its object model even though the method is not annotated with
@WebMethod.
If the corresponding service implementation bean doesn't have(implement)
the method,
it must be an error, right ?
How about if the corresponding service implementation bean
has(implements) the method,
but the method in the service implementation is not annotated with
@WebMethod ??
The method should be exposed in its object model ?
But the section 5.2.1 in page 14 of JSR-181 says "A WebMethod annotation
is required for 
each method that is published by the Web Service." 
I took this statement as Don't annotate a method with a WebMethod
annotation, 
if you don't want the method to be published.
So it doesn't make sence to me.

What do you think ?

Anyways, I've just finished implementing this mechanism and test cases
for it.
I attach a patch(wsm_diff.txt) and test cases(new_files.tar.gz).

I implemented as...
If an endpoint interface has a method which is not annotated with
@WebMethod,
the correspoding service implementation bean must have the same method (
same signature) and the method must be annotated with @WebMethod.
Otherwise, it will throw an exception.

Thanks in advance.

Wolfgang


Reply via email to