tabellen erstellen mit jboss

Status
Nicht offen für weitere Antworten.

boskop

Aktives Mitglied
Hallo,

ich mache gerade meine ersten Versuche mit jboss. Also bis jetzt gefällt mir das ganze sehr gut, es geht schnell und man hat etwas brauchbares. Jetzt möchte ich das ganze etwas optimieren und kriege etwas nicht ganz hin.

ich habe folgende Zeilen für eine Realtion im dd:

Code:
<relationships>
		<ejb-relation>
			<ejb-relation-name>ContactPerson-Customer</ejb-relation-name>
			<foreign-key-mapping/>
			<ejb-relationship-role>
				<ejb-relationship-role-name>ContactPerson to 
					Customer</ejb-relationship-role-name>
				<multiplicity>One</multiplicity>
				<relationship-role-source>
					<ejb-name>ContactPersonEJB</ejb-name>
				</relationship-role-source>
				<cmr-field>
					<cmr-field-name>customer</cmr-field-name>
					<column-name>customer</column-name>
				</cmr-field>
			</ejb-relationship-role>
			<ejb-relationship-role>
				<ejb-relationship-role-name>Customer to 
					ContactPersion</ejb-relationship-role-name>
				<multiplicity>One</multiplicity>
				<relationship-role-source>
					<ejb-name>CustomerEJB</ejb-name>
				</relationship-role-source>
				<cmr-field>
					<cmr-field-name>contactPerson</cmr-field-name>
					<column-name>contact_person</column-name>
				</cmr-field>
			</ejb-relationship-role>
		</ejb-relation>
	</relationships>

Die Tabellen gibt es noch nicht und ich lasse sie durch jboss machen.
Jetzt zu meinem ersten Problem. Wie muss ich machen, dass der foreign key in der Tabelle CUSTOMER contact_person heisst und nicht contactPerson. Dieses Tag wird irgendwie ignoriert, da wo ich es habe.
2. Wie kann ich die Typen der Felder angeben? Also ich möchte nicht, dass er für ein String-Feld ein VARCHAR(250) anlegt, sondern VARCHAR(30) z.B.

Hier noch ein Auszug aus jbosscmp-jdbc.xml
Code:
<entity>
         <ejb-name>CustomerEJB</ejb-name>
         <table-name>customers</table-name>
         <cmp-field>
            <field-name>name</field-name>
            <column-name>name</column-name>
		    <not-null/>
         </cmp-field>
		 <cmp-field>
            <field-name>street</field-name>
            <column-name>street</column-name>
         </cmp-field>
		 <cmp-field>
            <field-name>zip</field-name>
            <column-name>zip</column-name>
         </cmp-field>
		 <cmp-field>
            <field-name>city</field-name>
            <column-name>city</column-name>
         </cmp-field>
      </entity>

Hier klappt das auch mit den Spaltennamen. Aber wenn ich dieses Tag einfüge (<sql-type>VARCHAR(30)</sql-type>) deployt jboss nocht.

Kann mir da jemand weiterhelfen.

Besten Dank im voraus,

boskop
 
G

Guest

Gast
Sollte eigentlich laufen. ???:L
Versuche es in Kleinbuchstaben und gebe auch den JDBC Typen an.
Am besten so:
Code:
<jdbc-type>VARCHAR</jdbc-type>
<sql-type>varchar(30)</sql-type>
 

boskop

Aktives Mitglied
ja... mein Fehler, <jdbc-type> und <sql-type> mussten einfach nach dem <not-null/> sein, jetzt geht's.

Danke.

Weisst du etwa noch die Lösung für mein Problem mit dem Namen des Foreign key?
 
G

Guest

Gast
Das mit dem Feldnamen für FK in der Datenbank gehört nicht in ejb-jar.xml sondern in jbosscmp-jdb.xml

In ejb-jar.xml folgendes
Code:
<ejb-relationship-role>

  <ejb-relationship-role-name>Customer to ContactPerson</ejb-relationship-role-name>
  <multiplicity>One</multiplicity>
  <relationship-role-source >
     <ejb-name>CustomerEJB</ejb-name>
  </relationship-role-source>
  <cmr-field >
     <cmr-field-name>contactPerson</cmr-field-name>
  </cmr-field>

</ejb-relationship-role>
In jbosscmp-jdb.xml das hier
Code:
<ejb-relationship-role>

  <ejb-relationship-role-name>Customer to ContactPerson</ejb-relationship-role-name>
  <key-fields>
    <key-field>
      <field-name>contactPerson</field-name>
      <column-name>contact_person</column-name>
    </key-field>
  </key-fields>

</ejb-relationship-role>
Lass dir das ganze Zeug von XDoclet generieren, spart dir viel Zeit. ;)
 
G

Guest

Gast
:autsch: Ich kaufe ein "c" :bae: (jbosscmp-jdbc.xml ist oben gemeint)
 
G

Guest

Gast
Hier das ganze etwas ausführlicher, um Missverständnisse zu vermeiden

ejb-jar.xml
Code:
<relationships>

  <ejb-relation>
    <ejb-relation-name>ContactPerson-Customer</ejb-relation-name>

    <ejb-relationship-role>
      <ejb-relationship-role-name>ContactPerson to Customer</ejb-relationship-role-name>
      <multiplicity>One</multiplicity>
      <relationship-role-source>
        <ejb-name>ContactPersonEJB</ejb-name>
      </relationship-role-source>
      <cmr-field>
        <cmr-field-name>customer</cmr-field-name>
      </cmr-field>
    </ejb-relationship-role>

    <ejb-relationship-role>
      <ejb-relationship-role-name>Customer to ContactPerson</ejb-relationship-role-name>
      <multiplicity>One</multiplicity>
      <relationship-role-source>
        <ejb-name>CustomerEJB</ejb-name>
      </relationship-role-source>
      <cmr-field>
        <cmr-field-name>contactPerson</cmr-field-name>
      </cmr-field>
    </ejb-relationship-role>

  </ejb-relation>

</relationships>
jbosscmp-jdbc.xml
Code:
<relationships>

  <ejb-relation>
    <ejb-relation-name>ContactPerson-Customer</ejb-relation-name>
    <foreign-key-mapping/>

    <ejb-relationship-role>
      <ejb-relationship-role-name>ContactPerson to Customer</ejb-relationship-role-name>
		<key-fields/>
    </ejb-relationship-role>

    <ejb-relationship-role>
      <ejb-relationship-role-name>Customer to ContactPerson</ejb-relationship-role-name>
      <key-fields>
        <key-field>
          <field-name>contactPerson</field-name>
          <column-name>contact_person</column-name>
        </key-field>
      </key-fields>
    </ejb-relationship-role>

  </ejb-relation>

</relationships>
 
G

Guest

Gast
vielen Dank für die Antworten,

wenn ich den Code vom letzten posting in mein jbosscmp-jdbc.xml integriere bekomme ich immer den Fehler:

CMP field not found : fieldName=customer

Also ich habe das mit den referenzierten Feldern so gemacht:

ejb-jar.xml habe ich diese nicht im entity-tag drin, also kein <cmp-field><field-name>customer</field-name></cmp-field>in der ContactPerson-Bean genauso im jbosscmp-jdbc.xml

Die Referenz-Felder kommen bei mir also nur in den <ejb-relation>-Tags vor. Ist das so mal primär richtig? Wenn ich die Relations im jbosscmp-jdbc.xml lösche, wird auch korrekt deployed, eifach ich kann nicht alle Spaltennamen in den Tabellen setzten... ja nicht so schlimm, aber schöner wär's.
 
G

Guest

Gast
Anonymous hat gesagt.:
vielen Dank für die Antworten,

wenn ich den Code vom letzten posting in mein jbosscmp-jdbc.xml integriere bekomme ich immer den Fehler:

CMP field not found : fieldName=customer

Also ich habe das mit den referenzierten Feldern so gemacht:

ejb-jar.xml habe ich diese nicht im entity-tag drin, also kein <cmp-field><field-name>customer</field-name></cmp-field>in der ContactPerson-Bean genauso im jbosscmp-jdbc.xml
Sollten aber drin sein. Du willst doch ContactPerson als FK in Customer haben und umgekehrt, oder?

Anonymous hat gesagt.:
Die Referenz-Felder kommen bei mir also nur in den <ejb-relation>-Tags vor. Ist das so mal primär richtig? Wenn ich die Relations im jbosscmp-jdbc.xml lösche, wird auch korrekt deployed, eifach ich kann nicht alle Spaltennamen in den Tabellen setzten... ja nicht so schlimm, aber schöner wär's.
Dies wäre Ok, wenn Du eine Zwischentabelle hättest (relation-table-mapping). One-to-One mit Zwischentabelle habe ich mit CMP noch nie
gemacht. In diesem Fall wäre es OK, die Felder nicht unter <cmp-field> zu nennen, dafür müsstest Du aber in jbosscmp-jdbc.xml die Zwischentabelle nennen. Also statt <foreign-key-mapping/> <relation-table-mapping> wie bei m-n relationship ???:L
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
OnDemand CDI Ein Objekt erstellen Allgemeines EE 10
T Teamkalender mit JSF erstellen Allgemeines EE 4
OnDemand War File erstellen Allgemeines EE 1
D Bild erstellen und anzeigen lassen Allgemeines EE 4
T JSF User erstellen Allgemeines EE 22
T HttpSession von Hand erstellen Allgemeines EE 4
C Software ztum Erstellen von EntityBeans Allgemeines EE 5
TRunKX hx:commandExButton DAtei erstellen und dem User zum Download Allgemeines EE 7
M Checkboxes dynamisch erstellen Allgemeines EE 8
M Erstellen LogDatei Allgemeines EE 2
A web.xml für Servlet in Tomcat 5.5 erstellen Allgemeines EE 2
Q Dynamische Formulare aus xml Dateien erstellen... Allgemeines EE 8
A web.xml für Servlet in Tomcat erstellen Allgemeines EE 6
O webservice mit java erstellen. was brauch ich alles dazu? Allgemeines EE 53
N Axis2 lauffähiges Beispiel erstellen Allgemeines EE 3
N Menu dynamisch erstellen Allgemeines EE 3
O JSP dynamisch aus einem objekt heraus erstellen Allgemeines EE 7
R SUCHE: log4j.properties - Hilfsprogramm zum Erstellen Allgemeines EE 2
L Flirtseite erstellen Allgemeines EE 2
clemson Ordner auf Linux-Server erstellen --> Rechteproblem Allgemeines EE 5
I Erstellen von EAR's mit Ant Allgemeines EE 2
P Sessions von Hand erstellen und zerstören Allgemeines EE 3
L Topic oder Queue in JBoss erstellen Allgemeines EE 3
Y EJBs und Callbacks (Jboss 7.1) Allgemeines EE 1
J Mit @Schedule annotierte Methode wird nach einer Weile nicht mehr ausgeführt (JBoss AS 7.2) Allgemeines EE 0
P eMail versenden mit JBOSS Allgemeines EE 2
N WS-Security Beispiel mit JBOSS/Wildfly gesucht Allgemeines EE 2
I JBoss unheimlich langsam nach mehreren Deploys Allgemeines EE 2
BuckRogers Jboss 7** und j2ee 1.7 Allgemeines EE 1
D Jboss löscht Archiv nicht beim Redeployed Allgemeines EE 3
J paar Fragen zu JSF2/JEE6 Anwendung mit JBoss 7.1.1 Allgemeines EE 6
D Jboss lernen mit Praxisbeispiel Allgemeines EE 4
Y JBoss 7 - wie kann ich das logging meiner Applikation am JBoss konfigurieren Allgemeines EE 3
O JBoss und die Einbindung eines externen JAR Allgemeines EE 10
E Generelle Frage zu CDI mit JBoss AS 7.1.1 and Jave EE 6 Allgemeines EE 4
B JBoss Libs vs. JBoss Libary Allgemeines EE 12
E CDI mit verschiedenen Jars in EAR klappt auf Jboss AS 7.1.1.Final nicht Allgemeines EE 8
S Webapp in JBoss absichern nur in bestimmten Umgebungen? Allgemeines EE 2
C JBoss Clustering schlägt fehl Allgemeines EE 10
E JBoss 7.1 Datasource Problem Allgemeines EE 2
2 Deployment per EAR [JBOSS] Allgemeines EE 6
E JBoss NameNotFoundException: einloggen not bound Allgemeines EE 4
S Jboss Server Allgemeines EE 5
E JBoss, jsp und Parameter Allgemeines EE 2
H Bean läuft unter GlassFish, aber JBoss nicht Allgemeines EE 5
S JBoss 7 Authentifizierung: "No principals available" Allgemeines EE 3
S Principal, Authentication, Security und alles im JBoss 7 Allgemeines EE 16
W JBoss 6 - SocketTimeout dynamisch setzen Allgemeines EE 2
S Manueller EJB Lookup im JBoss AS 7.0.1 Allgemeines EE 8
T eXist und JBoss Allgemeines EE 5
J JBoss, Eclipse, Webseite wird nicht angezeigt? Allgemeines EE 4
T erste Anwendung in JBoss deployen Allgemeines EE 3
V JBoss und Classloader Allgemeines EE 6
S Embedded JBoss Problem beim Deployment Allgemeines EE 4
W Anleitung/Tutorial Eclipse/JBoss 6.0 mit Seam 3.0 bzw. jBPM 5.0 Allgemeines EE 3
G JBoss Portal Allgemeines EE 5
E Servlet Wie kann ich ohne Hilfe von Eclipse in JBoss mein servlet aufrufen Allgemeines EE 2
P Kann jemand mit dieser Exception was anfangen? (JBoss) Allgemeines EE 5
ruutaiokwu jboss problem - work-verzeichnis muss manuell gelöscht werden??? Allgemeines EE 5
W JBoss log dependencies aus jbossall-client.jar Allgemeines EE 7
G JBoss Datasource Allgemeines EE 3
ruutaiokwu ejb hot deployment unter jboss 4.2.3 Allgemeines EE 7
fastjack jBoss und externes Nachrichtensystem Allgemeines EE 3
H log4j + JBoss Allgemeines EE 10
P JAAS mit jboss 6 Allgemeines EE 2
X JBoss log4j Konflikt Allgemeines EE 2
reibi JBoss Webinterface Allgemeines EE 3
X JBoss InitialContext problem Allgemeines EE 5
E Properties-File in Jboss-Conf Verzeichnis ansprechen Allgemeines EE 2
S Servlet auf JBoss 5? Allgemeines EE 11
T Hibernate 3 + EJB 3 + JBoss 5 Allgemeines EE 6
M Deployment auf entfernten JBoss Allgemeines EE 4
T JBoss und DB2-Express Allgemeines EE 2
G separate log files in JBoss Allgemeines EE 2
Escorter JBoss AS als Webserver Allgemeines EE 2
N JBoss Problem mit Bibliothek in unterschiedlichen Versionen Allgemeines EE 2
K mehrere Datenbanken mit JBoss 4.2 und EJB3 Allgemeines EE 3
S Oracle DataSource im JBOSS ---> ClassCastException Allgemeines EE 2
S oracle db über jboss in jsp Allgemeines EE 19
F FORM Auth in JBoss für User mit falscher Rolle ? Allgemeines EE 2
E JBoss mit existierendem Tomcat nutzen? Allgemeines EE 4
T POI, Maven, JBoss und ein java.lang.NoClassDefFoundError Allgemeines EE 7
M embedded jboss unter eclipse 3.3 Allgemeines EE 2
M URL-Programm-Handling mit Jboss Allgemeines EE 2
G Deployen am JBoss Server Allgemeines EE 14
I JBOSS Jsp Files Pfad im Servlet? Allgemeines EE 4
B Problem mit JBoss-4.2.1.GA Allgemeines EE 8
remus JBoss Authentifizierung mit MYSQL-Datenbank Allgemeines EE 4
B Client ausführen mit JBoss v4.2 Allgemeines EE 3
G JBoss nutzt beim starten ständig das Root.war Allgemeines EE 12
R Jboss-Server mit Beispielanwendung füttern Allgemeines EE 2
R JBoss über lokale IP ansprechen Allgemeines EE 16
M JSP, MySQL und JBoss "No suitable Driver" Allgemeines EE 3
J Frage zu Jboss Allgemeines EE 7
N Jboss als Dienst -> Fehler 1053 Allgemeines EE 1
I JBOSS IDE EJB 3.0 Servlets JSP Applikation --> JSF sinnvo Allgemeines EE 2
S JBOSS-Security_DatabaseServerLoginModule Allgemeines EE 29
R Eclipse + JBoss + JSF Allgemeines EE 14
G webapplikation mit jsp, ejb 3.0 und jboss Allgemeines EE 10
T JBoss Installation . JAVA_HOME not set Allgemeines EE 2

Ähnliche Java Themen

Neue Themen


Oben