> > I think sometimes (maybe mostly!) you want intf/home/pk/etc
generated
> > for your abstract base bean and use it or derive from it in derived
> > beans. So even if something is not a concrete bean but it's
perfectly
> > logical to generate intf/etc for it and derive from them in
subclasses.
> > So don't inherit generate of ejb:bean for other bean stuff, it's
really
> > logical, if you defined remote methods a()/b()/etc in A, you want a
> > AIntf remote interface with all those methods in it and B's BIntf
will
> > derive from it, isn't it so?
>
> yeah, so in the case that this isn't the case the user just puts
> @ejb:interface generate=false etc etc. in the bean?
Yes. Btw, something that we should fix in inheritance in general is
making it smart enough to not include methods from a base in subclass.
For example look at CustomerData, you see all methods of PersonData
declared there too though it derives from PersonData and there's no need
for it.
> > So I don't think generate="dd" makes sense too :o)
>
> ? so we have
>
> @ejb:generate="(true)|false"
> @ejb:deployable="true|(false)"
>
> and all generate controls is bmp/cmp/session tasks, and deployable
> controls the various deployment descriptors?
>
> Not sure I see what is wrong with generate="dd" as if someone wants
> generated cmp|bmp|session and dd, but not support classes, then they
will
> most likely need to specify the support classes anyway via
ejb:interface
> etc tags, so its not like we're requiring additional comments...
>
> could you clarify this for me?
Well, actually I've added some guessing code to ifIsAConcreteEJBean.
I'll commit it today. What it does is doing these in order:
- if generate is specified then use it
- now try to guess because it wasn't specifically specified whether it
should be generated or not
- if( getCurrentClass().isAbstract() == true )//
<entitycmp/bmp/session/> is on
- //check if it has any abstract methods: if a method
other than create/remove/getData/like-that is abstract so it's not a
concrete bean
- check if it's abstract and has a non-xdoclet-generated
derived class
- else
//if( <entitycmp/bmp/session/> is off )
//{
generate( template );
//}
//else
//{
//should be a support class wrongly not abstract!
//}
I'm running it on PersonBean and there's no need for ejb:bean or
generate="false". Isn't it great?
So I think deployable is not useful :o)
Ara.
_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com
_______________________________________________
Xdoclet-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-devel