[ 
http://opensource.atlassian.com/projects/xdoclet/browse/XDT-1675?page=all ]

Robert Varga updated XDT-1675:
------------------------------

    Attachment: notHavingClassTag.patch

This patch makes the following changes:

- refactors TemplateSubTask and XDocletTagSupport to have the havingClassTag 
functionality implemented in a single place

- adds notHavingClassTag functionality to TemplateSubTask

- adds method allowedByHavingOrNotHavingClassTag which delegates to 
hasHavingClassTag and hasNotHavingClassTag

- change EJB subtasks to call allowedByHavingOrNotHavingClassTag instead of 
hasHavingClassTag

- adds methods to XDocletTagSupport which are able to delegate to relevant 
methods of TemplateSubTask
  (havingClassTag, notHavingClassTag, allowedByHavingOrNotHavingClassTag )

- changed EJBTagsHandler.concreteFullClassName to also check 
allowedByHavingOrNotHavingClassTag so that if generation of the session class 
is prevented by a class tag, then it uses the specified implementation class 
parameter value

- gets rid of an unnecessary import

- corrects some documentation


It was tested and I found it working.

To solve the original problem with this patch you need to do the following two 
things:

1. Add notHavingClassTag="ejb.suppress-session-class" to the session subtask in 
the EJB component build.xml.
2. Add the class-level tag @ejb.suppress-session-class to your Spring-based EJB 
bean class.

Best regards,

Robert


> please add support for @ejb.bean suppress-session-class attribute usable to 
> selectively suppress session class generation
> -------------------------------------------------------------------------------------------------------------------------
>
>          Key: XDT-1675
>          URL: http://opensource.atlassian.com/projects/xdoclet/browse/XDT-1675
>      Project: XDoclet
>         Type: New Feature

>   Components: EJB Module
>     Versions: 1.3, 1.2.3
>     Reporter: Robert Varga
>     Assignee: xdoclet-devel (Use for new issues)
>  Attachments: notHavingClassTag.patch
>
> Original Estimate: 1 hour
>         Remaining: 1 hour
>
> When Spring EJB base classes are extended, you do not need to generate a 
> session class as providing those methods is what the base classes are for.
> But not all EJB classes are implemented with Spring.
> However, currently it is almost impossible to mix the approaches of 
> generating or not generating session classes for an session EJB class within 
> the same xdoclet fileset. Only some awkward naming conventions can be used to 
> achieve this.
> I suggest a new boolean attribute for the @ejb.bean tag, called 
> suppress-session-class, which should govern file-by-file, whether a session 
> class should or should not be generated for the bean class. At the true 
> value, the session class should not be generated and the deployment 
> descriptor bean class attribute should not be set to the calculated session 
> class name.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://opensource.atlassian.com/projects/xdoclet/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
xdoclet-devel mailing list
xdoclet-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/xdoclet-devel

Reply via email to