Ik ben aan het uitzoeken welke frameworks beschikbaar zijn om een XML-representatie van entity beans (EJB 2.x) te krijgen waaraan de volgende eisen gesteld worden:
- Moet zowel remote als local werken
- Zonder gebruik van externe mapping descriptors tenzij deze middels annotaties gegenereerd kunnen worden (i.v.m. onderhoud)
Wat ik zelf al gevonden heb is Castor. Hoewel deze een externe mapping file gebruikt, kan deze wel genereerd worden door XDoclet. Helaas blijkt Castor niet in staat een entity bean om te zetten naar XML. Bij het testen zag ik dat niet de mapping definitie gebruikt werd maar gewoon reflectie werd toegepast op het EJBObject superklasse. Castor werkte wel met POJO's.
Ik zou natuurlijk een POJO value object representatie van een entity bean kunnen gebruiken voor het omzetten naar XML. Het probleem hierbij is dat de klassen van mijn value objecten door XDoclet gegenereerd worden en dus geen Castor annotaties hebben. Ik zou natuurlijk het XDoclet template kunnen aanpassen zodat er Castor annotaties voor value objecten worden gegenereerd maar dan verlies ik de mogelijkheid om velden te kunnen hernoemen en de XML-structuur te definiëren. Ik wil bijv. "klantPersoon" in het value object kunnen mappen naar "<klantEntity>" in de XML. Om deze reden kan er geen refelectie worden toegepast.
Hebben jullie Castor wel eens in een EJB 2.x omgeving toegepast?
Tevens heb ik gekeken naar JAXB. Wat ik gezien heb van de JAXB referentie implementatie is dat deze ook alleen werkt op POJO's. Bovendien lijkt er geen doclet te zijn voor het genereren van de benodigde mapping descriptor.
Kennen jullie nog andere frameworks die wellicht meer specifiek op EJB (2.x) gericht zijn?
- Moet zowel remote als local werken
- Zonder gebruik van externe mapping descriptors tenzij deze middels annotaties gegenereerd kunnen worden (i.v.m. onderhoud)
Wat ik zelf al gevonden heb is Castor. Hoewel deze een externe mapping file gebruikt, kan deze wel genereerd worden door XDoclet. Helaas blijkt Castor niet in staat een entity bean om te zetten naar XML. Bij het testen zag ik dat niet de mapping definitie gebruikt werd maar gewoon reflectie werd toegepast op het EJBObject superklasse. Castor werkte wel met POJO's.
Ik zou natuurlijk een POJO value object representatie van een entity bean kunnen gebruiken voor het omzetten naar XML. Het probleem hierbij is dat de klassen van mijn value objecten door XDoclet gegenereerd worden en dus geen Castor annotaties hebben. Ik zou natuurlijk het XDoclet template kunnen aanpassen zodat er Castor annotaties voor value objecten worden gegenereerd maar dan verlies ik de mogelijkheid om velden te kunnen hernoemen en de XML-structuur te definiëren. Ik wil bijv. "klantPersoon" in het value object kunnen mappen naar "<klantEntity>" in de XML. Om deze reden kan er geen refelectie worden toegepast.
Hebben jullie Castor wel eens in een EJB 2.x omgeving toegepast?
Tevens heb ik gekeken naar JAXB. Wat ik gezien heb van de JAXB referentie implementatie is dat deze ook alleen werkt op POJO's. Bovendien lijkt er geen doclet te zijn voor het genereren van de benodigde mapping descriptor.
Kennen jullie nog andere frameworks die wellicht meer specifiek op EJB (2.x) gericht zijn?
[ Voor 4% gewijzigd door ari3 op 30-12-2005 19:20 ]
"Kill one man, and you are a murderer. Kill millions of men, and you are a conqueror. Kill them all, and you are a god." -- Jean Rostand