XDoclet
XDoclet | ||||
---|---|---|---|---|
Recentste versie | 1.2.3 (5 mei 2005) | |||
Status | Inactief | |||
Besturingssysteem | Multiplatform | |||
Geschreven in | Java | |||
Categorie | Bibliotheek | |||
Licentie(s) | BSD-licentie | |||
Website | (en) XDoclet op SourceForge.net | |||
|
XDoclet is een open-source bibliotheek voor het genereren van broncode, die attribuut-georiënteerd programmeren voor Java mogelijk maakt. XDoclet maakt hiervoor gebruik van speciale Javadoc-tags die in de code worden ingevoegd. Er wordt een bibliotheek van voorgedefinieerde tags meegeleverd, die het coderen voor verschillende technologieën, zoals JavaEE, Web services, Portlet, etc., vereenvoudigen.
Voorbeeld
[bewerken | brontekst bewerken]Een typisch XDoclet commentaar zou er zo uit kunnen zien:
/** * This is the Account entity bean. It is an example of how to use the * EJBDoclet tags. * * @see Customer * * @ejb.bean * name="bank/Account" * type="CMP" * jndi-name="ejb/bank/Account" * local-jndi-name="ejb/bank/LocalAccount" * primkey-field="id" * * @ejb.finder * signature="java.util.Collection findAll()" * unchecked="true" * * @ejb.transaction * type="Required" * * @ejb.interface * remote-class="test.interfaces.Account" * * @ejb.value-object * match="*" * * @version 1.5 */
Voorbeeld: XDoclet in een J2EE-Context
[bewerken | brontekst bewerken]Voor het maken van een Enterprise Java Bean zijn ten minste de bean-implementatie, de remote-interface en de home-interface nodig. Eventueel is nog een local en een local home-interface nodig. Per applicatieserver heeft men daarbij nog een Deployment-Descriptor, of een Assembly-Descriptor of beide nodig. De descriptoren kunnen per applicatie-server, of zelfs per individuele toepassing verschillen. Alles bij elkaar zijn de volgende bestanden mogelijk:
- Bean-Implementatie
- Remote-Interface
- Home-Interface
- Local-Interface
- LocalHome-Interface
- Deployment-Descriptor
- Assembly-Descriptor
Met behulp van XDoclet hoeft de programmeur in het eenvoudigste geval alleen de bean-implementatie zelf maken, en voorzien van nieuwe tags. XDoclet genereert de overige bestanden automatisch
Voorbeeldheader
[bewerken | brontekst bewerken]Dit voorbeeld toont de toepassing van XDoclet in een J2EE omgeving. Het is een fragment uit een EJB
/** Hier kan de beschrijving van de klasse staan. * * XDoclet Begin * @ejb.bean name="NameDerBean" * display-name="Bean 123" * description="Diese Bean wird für XY verwendet" * jndi-name="ejb/NameDerBean" * type="Stateless" * view-type="both" * XDoclet Einde
Toekomst
[bewerken | brontekst bewerken]Met de introductie van annotaties in Java 1.5 is de toekomst van XDoclet onzeker. De mogelijkheden van annotaties vervangen XDoclet vrijwel volledig, maar moeten eerst nog door de Tool makers en third parties correct geïmplementeerd worden. Dit is bij de huidige stand van de ontwikkeling (begin 2006) de nog niet gepubliceerde J2EE 5 nog niet het geval. Bovendien moet afgewacht worden, of de implementaties van de Tool makers net zo eenvoudig en flexibel en makkelijk aangepast en uitgebreid kunnen worden als bij het opensourceproject XDoclet. Een portatie van de XDoclet Taggs naar annotations lijkt eenvoudig te zijn.
Externe links
[bewerken | brontekst bewerken]- (en) XDoclet op SourceForge.net
- (en) XDoclet 2 (gearchiveerd)