CCL Home Page
Up Directory CCL README
=============
Few quick reminders:

1) Never run j2ee, any of its tools,  or cloudscape database as root (at
   least for the installation described before)

2) Log in as j2ee and run everything as this user.

3) In the /home/j2ee/bin directory there are some utility scripts to
   start/stop/check

    start_j2ee -- starts cloudscape database and j2ee server
    stop_j2ee -- starts cloudscape database and j2ee server
    check_j2ee -- lists cloudscape and j2ee server if they run

4) Try not to kill j2ee or cloudscape. Use the scripts above, or
   the original commands:
      cloudscape -stop
      j2ee -stop

5) You can clean up ALL INSTALLED APPLICATION/BEANS and start again
   by typing:
       cleanup
   This may be useful at the learning stage.

===============  Now the details ============
Retrieved latest greatest JDK 1.3.1 from java.sun.com
(j2sdk-1_3_1-solsparc.sh) and run it in a temp directory to see what does
it do. 

mkdir /tmp/j2sdk-1_3_1
cp .../j2sdk-1_3_1-solsparc.sh /tmp/j2sdk-1_3_1
cd /tmp/j2sdk-1_3_1
chmod 755 j2sdk-1_3_1-solsparc.sh
./j2sdk-1_3_1-solsparc.sh

This  created a directory j2sdk1_3_1 as JAVA_HOME
I moved it to to /usr/local

mv /tmp/j2sdk-1_3_1/j2sdk1_3_1 /usr/local

I created a user called j2ee which was running Bourne like shell (in my
case it was ksh) and whose home directory was /home/j2ee:
As root I did:

groupadd -g 2611 j2ee
useradd -u 2611 -g 2611 -s /bin/ksh -d /home/j2ee -m -c 'J2EE Tree Owner' j2ee
passwd j2ee

Then created the top directory for j2ee distribution and chowned it to j2ee
user:


I went to http://java.sun.com, clicked on developer connection, and
chosen Early Access Downloads from the left navigation bar.
Logged in (if you are not a member of Development Connection, you can
register -- it is free).

I downloaded Java 2 SDK, Enterprise Edition 1.3 Beta Release (Feb 8, 2001)
for Solaris sparc: j2sdkee-1_3-beta-solsparc.sh and the documentation
j2sdkee-1_3-beta-doc-solsparc.zip to the directory /usr/local/j2ee1.3b
I also did (as root):
   chown j2ee /usr/local/j2ee1.3b
   chgrp j2ee /usr/local/j2ee1.3b
   cd /usr/local/j2ee1.3b
   chmod 755 j2sdkee-1_3-beta-solsparc.sh
   mkdir /usr/local/j2sdkee1.3
   chown j2ee /usr/local/j2sdkee1.3
   chgrp j2ee /usr/local/j2sdkee1.3

You need to get both the kit and the docs, since kit is not bundled with docs.
I unpacked them as user j2ee:


   cd /usr/local/j2ee1.3b 
   ./j2sdkee-1_3-beta-solsparc.sh
   unzip j2sdkee-1_3-beta-doc-solsparc.zip
   cd j2sdkee1.3
   mv * /usr/local/j2sdkee1.3
   rmdir j2sdkee1.3  

Since I already run an Apache web server on this machine, I made a symbolic
link to the doc subdirectory from the document root of my Apache server:

My $DocumentRootOfMyApache was /usr/local/apache_1.3.14/htdocs
cd $DocumentRootOfMyApache
ln -s /local/j2sdkee1.3/doc  doc

And then I could view the documents as:
  http://heechee.ccl.net:5180/doc


I Looked at:
  http://developer.java.sun.com/developer/earlyAccess/j2ee/install.html

Basically, it tells you the same stuff I am telling you.

I created the following .profile script in /home/j2ee to set my CLASSPATH
and PATH environment variables:

--------------------------------------------------
#!/bin/ksh   

umask 002  
set -o ignoreeof
set -o emacs
 
HOST=`hostname`
export HOST

JAVA_HOME=/usr/local/j2sdk1_3_1
J2EE_HOME=/usr/local/j2sdkee1.3
export JAVA_HOME J2EE_HOME

CLASSPATH=${JAVA_HOME}/lib/tools.jar
CLASSPATH=${CLASSPATH}:${JAVA_HOME}/lib/dt.jar
export CLASSPATH

PATH=/usr/local/bin:${JAVA_HOME}/bin:/usr/bin:/usr/X11R6/bin
PATH=${PATH}:/usr/openwin/bin:/home/j2ee/bin:${J2EE_HOME}/bin:.
export PATH

------------------------------------------------------------
Then I logged out and in (rather than do . profile), to make sure that
it does what I want. Note, I did not put the JSSE and JCE into the
CLASSPATH. It seems that J2EE SDK has these classes already
included in the j2ee.jar. Frankly, I hate the way it is organized
that all classes go into one BIG (8Mb) jar file. When I want to
replace the Tomcat 4.0beta1 with current version, I have to pack
and unpack tars....

I did not edit any files and left everything at defaults (the way to go
with betas...).


Then I looked at: http://heechee.ccl.net:5180/doc/release/ConfigGuide.html
but hold my temptation of changing anything. 

===========================
The J2EE SDK comes with a number of tools.
They are located in the $J2EE_HOME/bin directory:


cleanup -- a script which undeploys all deployed applications from J2EE 
           server. At the learning stage, this is a used very often. Just do:
               $J2EE_HOME/bin/cleanup
           and you feel fresh and clean...
           
           
deploytool -- X window GUI for deploying EJB applications
           To start a GUI mode do:
              deploytool 
           or
              deploytool -ui
           The problem with GUI mode is that if you have the J2EE running
           on remote server, it takes some time to transfer pixels back and
           for. You may consider command line options to avoid this:
           It also has command line options like:
           a) listing all installed applications:
                 deploytool -listApps ServerName
              for example:
                 deploytool -listApps heechee.ccl.net
           b) uninstalling particular application:
                 deploytool -uninstall ApplicationName ServerName
              for example:
                 deploytool -uninstall petstore heechee.ccl.net
           c) installing particular application:
                 deploytool -deploy SomeApplEarFile ServerName [SomeClientJar]
              where the optional SomeClienJar is an optional .jar file
              of a stand-alone Java application client. For example:
                 deploytool -deploy /home/j2ee/jps1.1.2/petstore.ear \
                          heechee.ccl.net
           d) printing help on usage:
                 deploytool -help
           e) deploying/undeploying connectors
                 deploytool -(un)deployConnector RarFile ServerName


cloudscape -- a database written in Java. It is started as:
                  cloudscape -start &
              and stopped as:
                  cloudscape -stop 

              Before you start the j2ee server, you need to start the
              database. You probably need to shutdown the j2ee server
              before you stop cloudscape


j2ee   -- J2EE server. It is a command line script with following options:
          a) Show version:
 
               j2ee -version

          b) Start the j2ee server and send logging output to the terminal
             rather than file:

               j2ee -verbose &

          c) Stop the server

               j2ee -stop


keytool -- creates selfsigned X509 certificates. This is different from
           the keytool which comes with J2SE (the standard edition java SDK)
           since it automatically adds the JCE.

packager -- command line tool which helps you package components:
                    .jar files for EJBs
                    .war for web application
                    .jar for application client
                    .rar resource adapyer file.

realmtool -- allows you to add and remove users, and to import certificate
             files  

               a) show all realm names
                     realmtool -show

               b) list users in the specific real
                     realmtool -list RealmName

               c) add user to default(?) realm
                     realmtool -add username password group1[,group2,...]

               d) adds a group to default realm
                     realmtool -addGroup group

               e) imports certificate file 
                     realmtool -import Certificate -alis Name

               f) removes user from the realm
                     realmtool -remove RealName UserName

runclient -- runs a J2EE application client
                 runclient -client ApplicationJar [-name Name] arguments


verifier -- validates J2EE component files:
                 .ear   application files
                 .jar   EJB, client
                 .war   Web component
            It can be run from within deploytool, as command-line, or as GUI.
               a) verbose output
                   verifier -v

               b) write results ri iyroyr file rather than Results.txt
                   verifier -o OutputFile

               c) run as GUI
                   verifier -u

               d) report level:
                   verifier -a       #all
                   verifier -w       #only warnings
                   veryfier -f       #failures only
                  (default warnings and failures are reported).
 

-------------------------
I went to $J2EE_HOME/bin and removed x privilege from others and group,
so only j2ee can run these scripts. 
   cd $J2EE_HOME/bin
   chmod go-x *

Now is the time to make the startup and shutdown script.
Since it was a rush installation, I did not have time to do it righ
with pid file, etc.

I created 2 scripts in $J2EE_HOME/bin

1) startup.sh

--------------------------------------------------
#!/bin/ksh

JAVA_HOME=/usr/local/j2sdk1_3_1
J2EE_HOME=/usr/local/j2sdkee1.3
export JAVA_HOME J2EE_HOME
 
CLASSPATH=${JAVA_HOME}/lib/tools.jar
CLASSPATH=${CLASSPATH}:${JAVA_HOME}/lib/dt.jar
export CLASSPATH
 
PATH=/usr/local/bin:${JAVA_HOME}/bin:${J2EE_HOME}/bin:/usr/bin:/usr/X11R6/bin
PATH=${PATH}:/usr/openwin/bin:/home/j2ee/bin:.
export PATH

echo `date` starting cloudscape >> ${J2EE_HOME}/logs/heechee.ccl.net/j2ee/j2ee/startup.log 2>&1

nohup ${J2EE_HOME}/bin/cloudscape -start >> ${J2EE_HOME}/logs/heechee.ccl.net/j2ee/j2ee/startup.log 2>&1 &

sleep 2

echo `date` starting j2ee server >> ${J2EE_HOME}/logs/heechee.ccl.net/j2ee/j2ee/startup.log 2>&1

nohup ${J2EE_HOME}/bin/j2ee -verbose >> ${J2EE_HOME}/logs/heechee.ccl.net/j2ee/j2ee/startup.log 2>&1 &
---------------------------------------------------

then did
   chmod 744 startup.sh

2) shutdown.sh
-----------------------------------------------------------
#!/bin/ksh

JAVA_HOME=/usr/local/j2sdk1_3_1
J2EE_HOME=/usr/local/j2sdkee1.3
export JAVA_HOME J2EE_HOME
 
CLASSPATH=${JAVA_HOME}/lib/tools.jar
CLASSPATH=${CLASSPATH}:${JAVA_HOME}/lib/dt.jar
export CLASSPATH
 
PATH=/usr/local/bin:${JAVA_HOME}/bin:${J2EE_HOME}/bin:/usr/bin:/usr/X11R6/bin
PATH=${PATH}:/usr/openwin/bin:/home/j2ee/bin:.
export PATH

echo `date` stopping j2ee server >> ${J2EE_HOME}/logs/heechee.ccl.net/j2ee/j2ee/startup.log 2>&1

nohup ${J2EE_HOME}/bin/j2ee -stop >> ${J2EE_HOME}/logs/heechee.ccl.net/j2ee/j2ee/startup.log 2>&1 &

sleep 3

echo `date` stopping cloudscape >> ${J2EE_HOME}/logs/heechee.ccl.net/j2ee/j2ee/startup.log 2>&1

nohup ${J2EE_HOME}/bin/cloudscape -stop >> ${J2EE_HOME}/logs/heechee.ccl.net/j2ee/j2ee/startup.log 2>&1 &

----------------------------------------------------------

then did:

chmod 744 shutdown.sh

then tried them as user j2ee

They, seemed to work.

I then added a script to start them on boot-up:

I bacame a root.

and created the script /etc/init.d/j2ee.osc

----------------------------------
#!/bin/sh
#
# Start/stop the j2ee server
#
#
 
J2EE_HOME=/usr/local/j2sdkee1.3
 
case "$1" in
start)  echo "Starting J2EE server as user j2ee: \c"
        su - j2ee -c "$J2EE_HOME/bin/startup.sh"
        ;;
stop)   echo "Stopping J2EE server as user j2ee: \c"
        su - j2ee -c "$J2EE_HOME/bin/shutdown.sh"
        ;;
*)      echo "Usage: /etc/init.d/j2ee.osc start|stop"; exit 1
        ;;
esac
exit 0
------------------------------------------------

Then did 
   chmod 755 j2ee.osc

Then tried it as root as:
/etc/init.d/j2ee.osc start

/etc/init.d/j2ee.osc stop


Then I created links in /etc/rc3.d directory

ln -s ../init.d/j2ee.osc S97j2ee  
ln -s ../init.d/j2ee.osc K27j2ee    

which will start/kill j2ee server on boot/shutdown
-------------------------------------------------



-------------------------
Installed Pet Store example:

Retrieved the latest PetStore EJB demo from java.sun.com
(jps-1_1_2.zip size 2985459).
I unplacked it in the j2ee home directory:
unzip jps-1_1_2.zip
which created a bunch of files under /home/j2ee/jps1.1.2

I linked the docs directory to the DOCUMENT_ROOT of my webserver as
beforeL
as root: 
My $DocumentRootOfMyApache was /usr/local/apache_1.3.14/htdocs

cd $DocumentRootOfMyApache
ln -s /home/j2ee/jps1.1.2/docs jps-docs

 
And then I could view the documents as:
  http://heechee.ccl.net:5180/jps-docs

Then I was following the http://mymachine/jps-docs/jps/install.html document:

Logged in as user j2ee

cloudscape -start  &      # note the &, the doc does not show it.

j2ee -verbose  &

It gave me this:

J2EE server listen port: 1050
Naming service started:1050
Binding DataSource, name = jdbc/Cloudscape, url = jdbc:cloudscape:rmi:CloudscapeDB;create=true
Binding DataSource, name = jdbc/DB1, url = jdbc:cloudscape:rmi:CloudscapeDB;create=true
Binding DataSource, name = jdbc/DB2, url = jdbc:cloudscape:rmi:CloudscapeDB;create=true
Binding DataSource, name = jdbc/InventoryDB, url = jdbc:cloudscape:rmi:CloudscapeDB;create=true
Binding DataSource, name = jdbc/EstoreDB, url = jdbc:cloudscape:rmi:CloudscapeDB;create=true
Binding DataSource, name = jdbc/XACloudscape, url = jdbc/XACloudscape__xa
Binding DataSource, name = jdbc/XACloudscape__xa, dataSource = COM.cloudscape.core.RemoteXaDataSource@de462
Starting JMS service ... Initialization complete - waiting for client requests
Binding : < JMS Destination : jms/Topic , javax.jms.Topic >
Binding : < JMS Destination : jms/Queue , javax.jms.Queue >
Binding : < JMS Cnx Factory : QueueConnectionFactory , Queue , No properties >
Binding : < JMS Cnx Factory : jms/TopicConnectionFactory , Topic , No properties >
Binding : < JMS Cnx Factory : TopicConnectionFactory , Topic , No properties >
Binding : < JMS Cnx Factory : jms/QueueConnectionFactory , Queue , No properties >
Starting web service at port:8000
Starting secure web service at port:7000
Apache Tomcat/4.0-b1
Starting web service at port:9191
Apache Tomcat/4.0-b1
J2EE server startup complete.


Then I used the deploytool in the command line mode (rather then GUI):

   deploytool -deploy /home/j2ee/jps1.1.2/petstore.ear heechee.ccl.net

It created a lot of output with the last 2 lines:

Remote message: Deployment of petstore is complete..
Sender object Deploy Tool : client code at http://192.148.248.32:9191/petstoreClient.jar

=========================

Playing with Pet Store

I checked if petstore is deployed:

  deploytool -listApps heechee.ccl.net
 
The following apps are deployed on heechee.ccl.net:
        petstore


===========================

So far so good.

I used my browser and zoomed on:
   http://heechee.ccl.net:8000/estore/index.html

Still fine.
I clicked on the link "Enter the store:"
http://heechee.ccl.net:8000/estore/populate?command=checkTables&redirect=/control/language%253Flanguage%253DEnglish


and got page which complained avut tables:

The tables necessary to run the Java Petstore Application are not installed. 
Please select the "Install Tables" link on the banner. 


So I clicked on Install Tables: and it brough me to the page:

Install Cloudscape tables (Recommended Based on Configuration) 
Install Oracle tables 
Install Sybase tables 

I clicked on the "Install Cloudscape tables" and tables were installed
automagically. I understand that before you can run Pet Store, you
need to have a store, i.e., some entries representing inventory,
orders, etc., etc., in the database.

Then, I clicked on "Return to Pet Store Demo" and got a nice picture
of pets, categories, search, etc.
I clicked on Sign-in in upper right corner, and got to sign-up page,
I went back and clicked on Fish, Then angel fish, and added it to my
cart. Then proceeded to checkout. It then asked me for names/addresses
and cardnumbers. I ended up buying fish.

=================================================

   I. Now I wanted to add some EJB on my own...
   -----------------------------------------

So I visited the directory:
${J2EE_HOME}/doc/guides/ejb/examples 

I started from "Getting Started", Chapter 2 in the J2EE Developer's Guide
(Guide is available from: 
    http://heechee.ccl.net:5180/doc/guides/ejb/html/DevGuideTOC.html);

Created a directory /home/j2ee/test 
I will be putting there all my successes and failures

Started with converter:
  mkdir /home/j2ee/test/converter


1) Remote interface. Copied the 
    /usr/local/j2sdkee1.3/doc/guides/ejb/examples/converter/Converter.java
    to /home/j2ee/test/converter

2) Then I grabbed the Home interface
   cp /usr/local/j2sdkee1.3/doc/guides/ejb/examples/converter/ConverterHome.java /home/j2ee/test/converter

3) I then copied the converted stateless enterprise bean:
   cp /usr/local/j2sdkee1.3/doc/guides/ejb/examples/converter/ConverterEJB.java /home/j2ee/test/converter

4) Now, I creted a script to compile the EJBs

-------------------------------
#!/bin/ksh

JAVA_HOME=/usr/local/j2sdk1_3_1
J2EE_HOME=/usr/local/j2sdkee1.3
export JAVA_HOME J2EE_HOME
 
CLASSPATH=${JAVA_HOME}/lib/tools.jar:${JAVA_HOME}/jre/lib/rt.jar
CLASSPATH=${CLASSPATH}:${JAVA_HOME}/lib/dt.jar:${J2EE_HOME}/lib/j2ee.jar:.
export CLASSPATH
 
PATH=/usr/local/bin:${JAVA_HOME}/bin:${J2EE_HOME}/bin:/usr/bin:/usr/X11R6/bin
PATH=${PATH}:/usr/openwin/bin:/home/j2ee/bin:.
export PATH

javac $@

---------------------

and saved it as /home/j2ee/bin/cb

then made it executable:

chmod 755 /home/j2ee/bin/cb 

Then, I did:

cd /home/j2ee/test/converter 
cb *

which is equivalent to 
cb  Converter.java ConverterEJB.java ConverterHome.java
in this case (I have only 3 files in this directory at this moment).

This created 3 new files and my /home/j2ee/test/converter is now:
$ ls -l
total 12
-rw-rw-r--   1 j2ee     j2ee         263 May 28 11:47 Converter.class
-rwxr-xr-x   1 j2ee     j2ee         438 May 28 11:36 Converter.java
-rw-rw-r--   1 j2ee     j2ee         666 May 28 11:47 ConverterEJB.class
-rwxr-xr-x   1 j2ee     j2ee         733 May 28 11:40 ConverterEJB.java
-rw-rw-r--   1 j2ee     j2ee         276 May 28 11:47 ConverterHome.class
-rwxr-xr-x   1 j2ee     j2ee         432 May 28 11:39 ConverterHome.java

-----------

   II. Now, I will be trying to create the J2EE application.
   -----------------------------------------------------


a) Starting j2ee server. I use my script startup.sh in ${J2EE_HOME}/bin to do
   this (as user j2ee):

      ${J2EE_HOME}/bin/startup.sh

b) Since I am working on my linux laptop, and the J2EE server runs on
   remote machine, I need to use the X-Window remote DISPLAY to see
   the deploy tool. I have two xterms opened on my laptop. On one I am
   logged in to my local laptop, and on the other I am logged in to the
   remote server machine: heechee.ccl.net. Do not try it on a slow modem.
   I am using cable modem, and it takes forever. There are command line
   tools to do the same thing, but I am learning here, OK?
   If you are sitting in front of the machine where the J2EE server
   is running, you just need to type: 
            deploytool &
   If you are working from other machine, do the following:

      i) in my local laptop xterm (mylaptop.aaa.bbb.com)  I say
           xhost +heechee.ccl.net

      ii) in the xterm looged in to heechee as user j2ee, I say:
            DISPLAY=mylaptop.aaa.bbb.com:0
            export DISPLAY
            deploytool &
          This displays a lot of missing fonts warnings

                 Font specified in font.properties not found
                 [-monotype-courier new-regular-i---*-%d-*-*-m-*-iso8859-1]

          but hopefully reasonable substitutions are done for fonts to look
          reasonably.
          After some time the nice picture appears which tells you
          that this is a deploytool, which is then replaced by the
          actual Application Deployment Tool windows.


c) Selected [File] menu from the top bar of the deploytool
     Selected [New]
       Selected [Application]
          Clicked on [Browse]
            In the [File name] field wrote 
                 /home/j2ee/test/converter
            and clicked on [New application] button on the right side
            This showed me a list of files in my /home/j2ee/test/converter
            directory. I erased current content of the [File name] field
            and entered there: ConverterApp.ear and clicked on the
            [New Application] button on the righthand side.
            It displayed the confirmation box, and I clicked on [OK].


 III. Now, I will be trying to package the enterprise bean.
 ------------------------------------------------------


a) Selected [File] from the top bar menu
     Selected [New]
         Selected [Enterprise Bean]
            and the Wizard window appeared. I read what they had to say.
            Basically:
              i) identify EJB JAR file that will contain the bean
             ii) Select bean time (we are doing simple session bean here)
            iii) Identify EB class and its Home and Remote interfaces.
         Clicked [Next]
         The combo box appeared and I accepted the ConverterApp name
            in the "Enterprise Bean will Go In:" field.
         In the "Jar Display Name field I entered "ConverterJAR" in place
            of Ejb1
         Clicked Add button on the right of "Contents:" area:
            "Edit Contents of ConverterJAR" boc appeared
            I typed the /home/j2ee/test/converter in the input field on
              the top and hit enter
            This displayed the files in the directory. I clicked on the
                  Converter.class
              and clicked on Add button.
              then
                  ConverterEJB.class
              and clicked on Add button.
              then
                  ConverterHome.class
              and clicked on Add button.
            The class files were added to the "Content of ConverterJAR" area
            at the bottom of the "Edit Contexts of ConverterJAR" box.
            Now I cliced [OK] button at the bottom of the 
            "Edit Contexts of ConverterJAR" box. 
         Box disappeared and the classes were now shown in the "Contents:"
           area of the New Entrerprise Bean Wizard - EJB JAR. 
         Now I clicked [Next]. The previous Wizard box was replaced by
           "New Enterprise Bean Wizard - General Box".
         I chosed:
               Bean Type:
                  Session
                    Stateless
            by clicking on radio buttons.
               Enterprise Bean Class pull down, I chosed:
                  ConverterEJB
               Home Interface pull down, I chosed:
                  ConverterHome
               Remote Interface pull down, I chosed:
                  Converter
               Enterprise Bean Name field I typed in:
                  ConverterBean
            then I clicke [Next]. New Wizarad window "New Enterprise Bean
            Wizard - Environment Entries" was displayed in place of old one.
            I clicked [Finish] button in this window. The wizard window
            was closed.

b) deploying J2EE application
     In the left side tree listing I selected the ConverterApp view by
       clicking on the ConverterApp name.
     Then in the row which provides tabs: 
        [General] [JNDI Names][Web Context][Security]
     I clicked on the [JNDI Names]. This displayed new boxes.
     In the JNDI Name field (on the right hand side) I entered:
          MyConverter
       and hit Enter.
     From the top bar I selected:
       [Tools]
         Deploy
           New window appeared. I selected the ConverterApp in the
             "Object to Deploy" pulldown and the local host for the 
             "Target Server" pulldown (this was the only option).  
             Then I selected on the [ ] Return Client Jar button.
             The entry field showed the path:
                 /home/j2ee/test/converter/ConverterAppClient.jar
             which looked OK for me, so I clicked [Next]
             The "Deploy ConverterApp - JNDI Names"
               listed the: EJB   ConverterBean    MyConverter which
               looked OK, so I clicked [Next]. Then it told me to click
               [Finish] and I did. It displayed the gizmo with progress of
               deployment. After it finished, I clicked [OK] button.
       I closed the "deploytool" by choosing from the top bar:
           [File]
             [Exit]  

 

  IV. Building the client 
  -----------------------
  I created another directory /home/j2ee/test/converterClient

  I copied the file
  /usr/local/j2sdkee1.3/doc/guides/ejb/examples/converter/ConverterClient.java
  to /home/j2ee/test/converterClient

  This client needs to have access to interfaces (compiled): Converter and
  ConverterHome.

  So I copied the interfaces from my  /home/j2ee/test/converter directory

    cd /home/j2ee/test/converterClient
    cp -p /home/j2ee/test/converter/Converter.class .
    cp -p /home/j2ee/test/converter/ConverterHome.class .

  Of course, I could just put /home/j2ee/test/converter in the CLASSPATH
  but wanted to make sure that I have exactly what is needed nor more, not
  less.

  Then I compiled the Client as:
     cd /home/j2ee/test/converterClient
     cb ConverterClient.java

  Note... In the cb script I had to use rt.jar from the $JAVA_HOME/jre/lib
  directory. 


  Now I tried to run the client. It requires classes from the 
  ConverterAppClient.jar which was created during deployment of our
  Converter application with deploytool as described above.

  I made sure that J2EE server is running by
    ps -ef | grep j2ee
  Them, I ran it in the /home/j2ee/test/converterClient as:
 
  CP=$J2EE_HOME/lib/j2ee.jar:/home/j2ee/test/converter/ConverterAppClient.jar:.
  java -classpath $CP ConverterClient  

  It told me:
    12160.0
    0.77
  i.e., that 100 USD is 12160.0 yen, and 100 yen is 0.77 USD.

==============================








Modified: Tue May 29 00:46:12 2001 GMT
Page accessed 320 times since Tue Mar 15 13:18:20 2005 GMT