Exercise 6.3: A Simple Relationship in CMP 2.0
The example program in Exercise 6.3 shows how to implement a simple CMP relationship between the Customer EJB and the Address EJB. The client again uses dependent value classes, to pass address information along to the Customer EJB.
Build and Deploy the Example Programs
Perform the following steps:
Open a command prompt or shell terminal and change to the
ex06_3directory created by the extraction process.Set the
JAVA_HOMEandJBOSS_HOMEenvironment variables to point to where your JDK and JBoss 4.0 are installed. Examples:Windows: C:\workbook\ex06_3> set JAVA_HOME=C:\jdk1.4.2 C:\workbook\ex06_3> set JBOSS_HOME=C:\jboss-4.0Unix: $ export JAVA_HOME=/usr/local/jdk1.4.2 $ export JBOSS_HOME=/usr/local/jboss-4.0Add
antto your execution path.Windows: C:\workbook\ex06_3> set PATH=..\ant\bin;%PATH%Unix: $ export PATH=../ant/bin:$PATHPerform the build by typing
ant.
As in the last exercise, you will see titan.jar
rebuilt, copied to the JBoss deploy directory,
and redeployed by the application server.
Examine the JBoss-Specific Files
The Customer-Address relationship in this example can be mapped to a
database table by defining the mapping in
jbosscmp-jdbc.xml.
jbosscmp-jdbc.xml
<jbosscmp-jdbc> ... </enterprise-beans> <relationships> <ejb-relation> <ejb-relation-name>Customer-Address</ejb-relation-name> <foreign-key-mapping/> <ejb-relationship-role> <ejb-relationship-role-name>Customer-has-a-Address </ejb-relationship-role-name> <key-fields/> </ejb-relationship-role> ...