Files   Prepare   Run   Troubleshooting   Related Topics 

About the Example

This example is comprised of a package that demonstrates an Enterprise Java Bean. The example uses an entity EJB called AccountBean.

The example demonstrates:

Client application

The Client application performs these steps:

  1. Finds or creates 20 separate accounts

  2. Prints the balances for all accounts

  3. Finds all accounts with a balance greater than $5000

  4. Removes the accounts


Files Used in the Example

Directory Location:

BEA_HOME/wlserver_10.3/samples/server/examples/src/examples/ejb/ejb20/basic/beanManaged/

(where BEA_HOME is the directory containing your WebLogic Server installation)

File

Click source files to view code.

Description

AccountBean.java AccountBean is an Entity Bean. It illustrates EJB Bean-managed persistence and transactions. The code in this file directly accesses the data storage.
application.xml The Java EE standard enterprise application deployment descriptor.
build.xml Ant build file that contains targets for building and running the example.
Client.java This class demonstrates calling an entity EJB.
EJBeanManagedClient.jsp The Java Server Page client that demonstrates Bean-Managed Persistence.
ExamplesFooter.jsp Java Server Page containing the Example Footer.
ExamplesHeader.jsp Java Server Page containing the Example Header.
ProcessingErrorException.java This class is used with the WebLogic EJB container-managed example package. It is throw if the caller attempts to withdraw more than a certain preset limit from the account.
table.ddl File that sets up tables and constraints in database.
web.xml The Java EE standard Web application deployment descriptor.
weblogic-application.xml The WebLogic Server-specific enterprise application deployment descriptor.
weblogic.xml The WebLogic Server-specific Web application deployment descriptor.

Prepare the Example

Prerequisites

Before working with this example:

  1. Install WebLogic Server, including the examples.
  2. Start the Examples server.
  3. Set up your environment.

This example is preconfigured to work with the PointBase database, included with the WebLogic Server distribution. As you'll use a database for the persistent storage of the entity EJB, you'll need to set it up. The PointBase database is started automatically in the background when you start the Examples server, but you should confirm that it is running and configure it to your specifications using the PointBase console; see Opening the PointBase Console for instructions. The persistent storage is completely invisible to the client; the actual storage is handled by the EJB directly and not the container.

With database persistence, each instance of an EJB is written to a row in a table. If you want or need to run this example with Oracle, see Database SetUp for instructions.

Configure WebLogic Server

No special configuration is required for this example because the examples-dataSource-demoXAPool
datasource is preconfigured. To verify that this datasource is configured and deployed, you may follow the steps below:

  1. In the left pane of the Administration Console, navigate to Services—>JDBC—>Data Sources.
  2. Observe that the examples-dataSource-demoXAPool (JNDI Name) entry has the value of "examplesServer" in the Targets column.
  3. You may view its configuration by clicking on its name.

Build and Deploy the Example

To build the example, follow these steps:

  1. Change to the SAMPLES_HOME\server\examples\src\examples\ejb\ejb20\basic\beanManaged directory, where SAMPLES_HOME refers to the main WebLogic Server examples directory, such as d:\bea\wlserver_10.3\samples.
  2. Execute the following command:

    ant build

    This command compiles and stages the example.
  3. Execute the following command:

    ant deploy

    This command deploys the example on the wl_server domain of your WebLogic Server installation.
  4. The script will build the example and place the files in the correct locations in your WebLogic Server distribution:

Run the Example

  1. Complete the steps in the "Prepare the Example" section.
  2. Execute the following command (from the shell where you set your environment):
    ant run
    This command runs the example. You may also employ a JSP to run the application. Execute the following command:

    ant run.webapp

    Or you may open it from a browser using this URL

    http://host:port/ejb20_beanManaged/EJBeanManagedClient.jsp

  3. If you're running the Client example, you should get output similar to this from the client application:
      Beginning beanManaged.Client...
    
      Creating account with id: ID: 0
      Creating account with id: ID: 1
      Creating account with id: ID: 2
      Creating account with id: ID: 3
      Creating account with id: ID: 4
      Creating account with id: ID: 5
      Creating account with id: ID: 6
      Creating account with id: ID: 7
      Creating account with id: ID: 8
      Creating account with id: ID: 9
      Creating account with id: ID: 10
      Creating account with id: ID: 11
      Creating account with id: ID: 12
      Creating account with id: ID: 13
      Creating account with id: ID: 14
      Creating account with id: ID: 15
      Creating account with id: ID: 16
      Creating account with id: ID: 17
      Creating account with id: ID: 18
      Creating account with id: ID: 19
      Account: :ID: 0 has a balance of 0.0
      Account: :ID: 1 has a balance of 1000.0
      Account: :ID: 2 has a balance of 2000.0
      Account: :ID: 3 has a balance of 3000.0
      Account: :ID: 4 has a balance of 4000.0
      Account: :ID: 5 has a balance of 5000.0
      Account: :ID: 6 has a balance of 6000.0
      Account: :ID: 7 has a balance of 7000.0
      Account: :ID: 8 has a balance of 8000.0
      Account: :ID: 9 has a balance of 9000.0
      Account: :ID: 10 has a balance of 10000.0
      Account: :ID: 11 has a balance of 11000.0
      Account: :ID: 12 has a balance of 12000.0
      Account: :ID: 13 has a balance of 13000.0
      Account: :ID: 14 has a balance of 14000.0
      Account: :ID: 15 has a balance of 15000.0
      Account: :ID: 16 has a balance of 16000.0
      Account: :ID: 17 has a balance of 17000.0
      Account: :ID: 18 has a balance of 18000.0
      Account: :ID: 19 has a balance of 19000.0
    
      Querying for accounts with a balance greater than 5000.0...
      Account ID: 6; balance is $6000.0
      Account ID: 7; balance is $7000.0
      Account ID: 8; balance is $8000.0
      Account ID: 9; balance is $9000.0
      Account ID: 10; balance is $10000.0
      Account ID: 11; balance is $11000.0
      Account ID: 12; balance is $12000.0
      Account ID: 13; balance is $13000.0
      Account ID: 14; balance is $14000.0
      Account ID: 15; balance is $15000.0
      Account ID: 16; balance is $16000.0
      Account ID: 17; balance is $17000.0
      Account ID: 18; balance is $18000.0
      Account ID: 19; balance is $19000.0
      Removing beans...
    
      End beanManaged.Client...

    Unfortunately, this does not allow you to see the ACCOUNTS database table filled with values because it executes quickly and removes entries when it is finished. If it did not, a simple SQL query, such as SELECT * FROM ACCOUNTS, could display the contents of the table.


Troubleshooting


Related Topics

(Internet connection required.)


Copyright © 1996, 2008, Oracle and/or its affiliates. All Rights Reserved.