JBoss IDE - Problem mit XDoclet Konfiguration

CFranke

Grünschnabel
Hallo zusammen!

Eins vorneweg: Ich bin kein Profi und bin jetzt im Studium das erste Mal an einer J2EE-Applikation.
Meine Gruppe und ich haben uns darauf geeinigt das JBoss IDE (für Eclipse 3.1 / JDK 1.5.0_03) Plugin für Eclipse zu nutzen.

Nun habe ich folgendes Problem bei folgender Verzeichnisstruktur:

src
--facade
----StudentFacadeBean.java
--persistence
----user
------UserBean.java

Mein Ziel ist:
- die *CMP-, die *PK- und die *EntityValue-Dateien für die Entity Bean UserBean sind im user package
- das Local interface und das LocalHome interface für die Entity Bean sind im package user.interfaces
- das Remote und das Home interface für die Session Bean StudentFacadeBean kommen ins package facade.interfaces

Allerdings funktioniert es leider nicht so wie gedacht.
Für die interfaces des Session Beans wird kein extra package angelegt und (das schlimmste) der Deploymentdeskriptor ist fehlerhaft und beinhaltet zum Beispiel überhaupt keinen Eintrag für das Session Bean.

Falls jemand die Konfigurationsdateien betrachten möchte, finden sie sich hier:
.xdoclet
xdoclet-build.xml


Wie gesagt, sind wir alle ziemlich neu auf dem Gebiet J2EE, aber es klappt alles ganz gut - bis auf diese XDoclet-Konfiguration.

In Hoffnung, dass mir hier geholfen werden kann, ;)

Beste Grüße,
Christian
 
Hallo!

Versuch doch mal folgendes:
In der XDoclet Konfiguration legt ihr ein ejbdoclet an.
Diesem EJB Doclet fügt ihr nun folgende Elemente hinzu:
+ejbdoclet (ejbSpec: 2.0, dest-dir:src)
-deploymentdescriptor (dest-dir: META-INF, ejb-jar.xml)
-fileset (dir: src, includes: **/*Bean.java)
-homeinterface
+------> packagesubstitution (packages: deinPackage...., substitutewith: deinNeuesPackage)
-remoteinterface
+----- -> packagesubstitution ...
-jboss
-localinterface
+-------> packagesubstitution ...
-localhomeinterface
+--------> packagesubstitution ...

Willst du eine EntityFacade oder eine ServiceFacade errichten?

Gruß Tom
 
Erstmal Danke für die Antwort. :)

Ich möchte eine EntityFacade bauen. Das StudentFacade Session Bean dient
als (eine) Facade für das User Entity Bean.

Ich habe das Problem aber zwischenzeitlich gelöst (naja fast) und es im Prinzip
genau so gemacht, wie von Dir vorgeschlagen.
Es lag wohl daran, dass ich mehrere ejbdoclets hatte, die wiederum jeweils einen deploymentdescriptor hatten. Nachdem ich alles in einem ejbdoclet gesammelt
hatte, hat es auch funktioniert.

Das einzige, was er jetzt komischerweise noch nicht macht ist die
packagesubstitution von facade nach facade.interfaces.
"Seltsamerweise" deswegen, weil die substitution von persistence.user nach
persistence.user.interfaces wunderbar funktioniert.

Beste Grüße,
Christian
 

Neue Beiträge

Zurück