Bank
The Bank example has a simple Bank interface to open a bank account and
to query the balance in a bank account. It illustrates basic communication
using the ORB.
From this example, you will learn how to:
-
Implement a simple interface
-
Implement a server using the inheritance mechanism
Directory Contents
-
Bank.idl
IDL interface for the Bank object.
-
Server.java
Bank server. Creates an instance of the Bank and calls
org.omg.CORBA.BOA.impl_is_ready()
to make this object available to client programs. The Bank Server
implementation implements two methods: open, which opens a bank
account, and balance, which returns the balance in a person's
account whose name is provided as input (by generating a random number).
-
AccountImpl.java
Account Object implementation. This program contains the implementation of t
he Account object and is part of the Bank Server described above.
-
AccountManagerImpl.java
Account Manager Implementation. This program contains the implementation of
the Account Manager object and is part of the Bank Server described above.
-
Client.java
This is the Bank client. It binds to the AccountManager object and invokes open() to open a bank account. It then invokes balance() on the account object reference obtained to query the balance.
-
ClientApplet.java
This is the Bank Client Applet.
-
ClientApplet.html
This is the html file to download the ClientApplet.
-
Client.C
This program is the C++ equivalent to Client.java above, included here for comparison.
-
Server.C
This program is the C++ equivalent to Server.java above, included here for comparison.
-
Makefile (vbmake.bat on Windows): Used to build all the test targets.
Building this example
Typing make (or vbmake on Windows) in the bank subdirectory will cause the Bank.idl to be run through the idl2java compiler. It will also build the following classes for the examples described above:
-
Server.class
-
Client.class
Compilation Warnings
You will see the following compilation warning when you type make (or vbmake on Windows) in the bank subdirectory or when you explicitly compile ClientApplet.java using:
prompt>javac ClientApplet.java
Note: ClientApplet.java uses a deprecated API. Recompile with
"-deprecation" for details.
1 warning
This warning occurs because the example uses a Java API that has been deprecated since JDK1.1. The calls to the deprecated Java API have not been changed for
the sake of JDK1.0.2 users.
Running this example
To run the examples, first make sure that the VisiBroker Smart Agent (osagent
executable) is running on your network. Then start the bank server using the command:
prompt> vbj Server &
(start vbj Server on Windows)
// make the server run in the background
Next, open a user's bank account and query the balance in the account using the command
prompt> vbj Client john
or
prompt> vbj Client
// uses a default name
or
You could use a Java-enabled browser and load ClientApplet.html
Return to the top-level examples page.