WebLogic Server 6.0 Code Examples, BEA Systems, Inc.

Package examples.ejb20.basic.statefulSession

This example is a package that demonstrates an Enterprise JavaBean written to the EJB 2.0 specification.

See:
          Description

Interface Summary
Trader The methods in this interface are the public face of TraderBean.
TraderHome This interface is the home interface for the TraderBean.java, which in WebLogic is implemented by the code-generated container class TraderBeanC.
 

Class Summary
Client This class illustrates calling a stateful SessionBean and performing the following exercises: Create a Trader Buy some shares using the Trader Sell some shares using the Trader Remove the Trader
TraderBean TraderBean is a stateful SessionBean.
TradeResult This class reflects the results of a buy/sell transaction.
 

Exception Summary
ProcessingErrorException This class is used with the examples.ejb20.statefulSession package.
 

Package examples.ejb20.basic.statefulSession Description

This example is a package that demonstrates an Enterprise JavaBean written to the EJB 2.0 specification. The example is a stateful session EJB called TraderBean.

The example demonstrates:

Before Running the EJB 2.0 Examples

Before you can build and run the EJB 2.0 examples, you must first download the WebLogic Server 6.0 supplement, ejb20.jar, from the BEA product download page. This allows you to use the Enterprise JavaBeans features in the WebLogic Server 6.0 environment. Until you install the ejb20.jar file, you will be unable to build and run the EJB 2.0 examples.

Pre-Built Examples

The EJB 2.0 examples included in the WebLogic Server 6.0 distribution are not shipped pre-built. To run these examples, you must first download ejb20.jar and then build the example following the specific examples instructions.

Client Application

The Client application performs these steps:
  1. Contacts the Trader home ("TraderHome") through JNDI to find the EJB
  2. Creates a Trader
  3. Sells shares of "MSFT"
  4. Buys shares of "BEAS"
  5. Gets the change in the cash account
    (The EJB does not actually "buy" or "sell"; it simulates the actions of accessing a database)
  6. Removes the Trader
The application demonstrates how repeated calls to the same session EJB have a persistent state -- the change in the cash account -- that is maintained across all the calls. Notice that neither the client nor the EJB do anything to maintain that state: the container handles it transparently. All the logic for the cash account is encapsulated in the EJB, unlike the stateless session example, where all persistence is provided by the client.

To get the most out of this example, first read through the source code files to see what is happening.

Start with the XML deployment files ejb-jar.xml and weblogic-ejb-jar.xml to find the general structure of the EJB, which classes are used for the different objects and interfaces, then look at Client.java to see how the application works.

These three sections cover what to do:

  1. Build the example
  2. Configure the server
  3. Run the example

Build the example

Set up your development shell as described in Setting up your environment.

We provide separate build scripts for Windows NT and UNIX:

These scripts will build the example and place the files in the correct locations in your WebLogic Server distribution:

Running the build script places the EJB in /config/examples/applications, where it automatically deploys once the server is started. If you are already running the server and build another EJB, it is automatically placed in this directory and instantly deployed.

Additional information on using the build scripts is found in Building Enterprise JavaBean examples

Configure the server

  1. Start the WebLogic Server.

  2. Start the Administration Console.

  3. Click to expand the Deployments node in the left pane and select EJB Deployments.

    A list of deployed EJBs displays.

  4. Choose the appropriate deployment unit from the list.

  5. Select the Target tab in the right-hand pane.

  6. Verify that the EJB is deployed on the examplesServer.

Run the example

  1. Run the client in a separate command line window. Set up your client as described in Setting up your environment, and then run the client by entering:
    $ java examples.ejb20.basic.statefulSession.Client "t3://WebLogicURL:Port"

    where:

    WebLogicURL
    Domain address of the WebLogic Server
    Port
    Port that is listening for connections (weblogic.system.ListenPort)

  2. You should receive output similar to this:
    Beginning statefulSession.Client... 
    
    Creating trader 
    
    Selling 200 of MSFT 
    200 shares sold at a price of 150.0 
    Buying 250 of BEAS 
    250 shares bought at a price of 100.0 
    Change in Cash Account: $5000.0 
    
    Removing trader 
    
    
    End statefulSession.Client... 
    
    

There's more...

Read more about EJB in BEA WebLogic Server Enterprise Java Beans.


Documentation is available at
http://e-docs.bea.com/wls/docs60

Copyright © 2000 BEA Systems, Inc. All Rights Reserved.