Prerequisite:
1) Weblogic full installation with sample, which you can reference previous article for details.
Weblogic sample is not necessary, I just want to reuse the resources like db and queue here.
2) Start the Weblogic domain
3) Download Weblogic based sample code from following URL, and extract to your directory.
https://www.manning.com/books/ejb3-in-action
My directory is $HOME/student/ejbAction.
1. Customize general configuration
$ cd $HOME/student/ejbAction
$ vi common.xml # customize general configure for all chapters
$ diff -u common.xml.orig common.xml
<!--** Customize as per your environment **** -->
- <property name="BEA_HOME" value="${env.BEA_HOME}"/>
- <property name="WLS_HOME"value="${BEA_HOME}/wlserver_10.0"/>
+ <property name="BEA_HOME" value="${env.BEA_HOME}"/>
+ <property name="WLS_HOME"value="${BEA_HOME}/wlserver"/>
<property name="SPRING_HOME" value="${env.SPRING_HOME}"/>
<property name="DOMAIN_HOME" value="${env.DOMAIN_HOME}"/>
<property name="domain" value="${env.DOMAIN_NAME}" />
...
<property name="server.name" value="examplesServer" />
<property name="admin.host" value="localhost" />
- <property name="admin.port" value="7001"/>
- <property name="admin.user" value="weblogic"/>
- <property name="admin.password" value="weblogic"/>
- <property name="http.port" value="7001"/>
+ <property name="admin.port" value="8001"/>
+ <property name="admin.user" value="scott"/>
+ <property name="admin.password" value="tiger000"/>
+ <property name="http.port" value="8001"/>
+ <!--property name="failondeploy" value="false"/-->
+ <taskdef name="wldeploy" classname="weblogic.ant.taskdefs.management.WLDeploy" />
2. Customize chapter1
$ cd chapter1
$ for i in `find * -name "*.orig"`; do j=`expr $i : '\(.*\).orig'`; echo diff -u $i $j; diff -u $i $j; echo; echo; done
diff -u build.xml.orig build.xml
<classpath>
<pathelement location="${lib.dir}/${cli.name}.jar"/>
<pathelement location="${bld.ejb.dir}"/>
- <pathelement location="${WLS_HOME}/server/lib/wlclient.jar"/>
+ <pathelement location="${WLS_HOME}/server/lib/weblogic.jar"/>
</classpath>
</java>
diff -u etc/jndi.properties.orig etc/jndi.properties
# Set required appropriate for your environment
java.naming.factory.initial=weblogic.jndi.WLInitialContextFactory
-java.naming.provider.url=t3://localhost:7001
+java.naming.provider.url=t3://localhost:8001
3. Build, deploy and run
$ cd $ORACLE_HOME/wlserver/samples/server
$ . ./setExamplesEnv.sh #Set environment variables
$ cd $HOME/student/ejbAction/chapter1
$ ant clean
$ ant # build and deploy
$ ant run # run the case
...
run:
[echo]Executing client class
[java]Invoking EJB
[java]Invoked EJB successfully .. see server console for output
From server log we can see:
Hello Curious George welcome to EJB 3 In Action!