But wait a minute, why is @ejb:select a class tag after all? It's not
like ejb:finder which is something you don't declare in your bean impl
class, it's a real abstract method you define in bean impl class. So
don't you think it should be a method tag that you put in your
ejbSelect's javadoc? Then there won't be any need for signature
parameter either, xdoclet can introspect the signature from the real
method.

PS: CC-ed to xdoclet-devel for discussion/fix.

Cheers,
Ara.

> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:xdoclet-user-
> [EMAIL PROTECTED]] On Behalf Of Joseph Hindsley
> Sent: Tuesday, January 29, 2002 11:48 PM
> To: [EMAIL PROTECTED]
> Subject: [Xdoclet-user] What is the correct way to use @ejb:select?
> 
> Hey all,
> 
> I'm using xdoclet 1.1 and mvcsoft 1.0 to generate my code. In one of
my
> entity beans I want to use a select method to get a Collection of
String
> (the name string from related entity beans).
> 
> I've added the @ejb:select tag with the appropriate QL statement to
the
> document. Then I defined an interface method that calls the select
method
> and returns the collection as a Vector. When I try to compile, I get a
> "cannot resolve symbol" error.
> 
> If I add an abstract method to declare the select method, everything
> compiles; but, when I run mvcbuild on it (part of mvcsoft) I get
> compilation errors.
> 
> Is the first way that I tried @ejb:select correct (no abstract method
> declared in the Bean class)? Or is the second way correct and I have
an
> issue with mvcsoft? Or am I completely missing altogether?
> 
> Here's excerpt of the first attempt:
> ----------------------------------
> /**
>  * @ejb:select signature="java.util.Collection
>                           ejbSelectGroupNames(java.lang.Long userId)"
>                query="SELECT g.name
>                       FROM User AS u, IN(u.groups) AS g
>                       WHERE g.active = true AND u.id = ?1"
>  */
> /**
>  * @ejb:interface-method view-type="local"
>  */
> public Vector getGroupNames(Long userId) {
>     return new Vector(ejbSelectGroupNames(userId));
> }
> ----------------------------------
> 
> And the second attempt I added:
> ----------------------------------
> public abstract Collection ejbSelectGroupNames(Long id);
> ----------------------------------
> 
> --
> Joseph Hindsley
> Systems Architect
> ProviderLink, Inc.
> 
> 
> _______________________________________________
> Xdoclet-user mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/xdoclet-user


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


_______________________________________________
Xdoclet-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-user

Reply via email to