Object Model Wrapping with JDBO

The JDBO (Java Distributed Business Object) generator allows software developers to focus on pure business object modeling. Distribution, persistence, presentation, and other technologies are no longer of primary importance. The only technology consideration is the Java language itself and some of the API's that support the building of a rich object model. The full richness of the object-oriented paradigm as supported by Java can be fully used without considering deployment. When ready to deploy, the developer uses a generator to wrap the business model with RMI, Session EJB, or Entity EJB. The business model is not violated and is easily re-deployed.

A deployed business model provides clients with objects that look and behave exactly like the business model. In addition to reflecting the business model, the deployed objects are remotely distributed and persistent. Early versions of the JDBO generator will not generate persistence for RMI, session EJB, or Entity EJB bean managed persistence. Future versions will include these features as well as a rule inferencing capability to different expert systems.

All deployments have the same basic architecture.

For the first release the generator will deploy the business model in RMI, not EJB. Basic persistence and rule engine objects will be provided but not automatically generated.

The first persistence agent will be specialized to work with IBM's Enterprise Access Builder. The agent will do relation-to-object mapping. Developers will at first use the IBM enterprise access builder to generate table objects. The table objects are then used to create persistence agents. This mostly involves associating the table objects an agent and defining the mapping.

Rule engine objects are session EJB's that provide a standard interface to different rule engines. Developers use rule EJB's to capture business rules and interact with the business model.

Using JDBO the developer must specify:

1. Which business classes are coupled.

2. Which business classes are simply wrapped.