Business Logic and Abstraction
Layer
Within the Business Logic Layer, the business objects (BOs) specific to the composite application are implemented. Business objects encapsulate reusable functionality and may expose services. These services can be either local or remote if published for reuse by others.
An Abstraction Layer is not required but recommended to keep higher layers independent from service implementation details and to make them more flexible. If the services used are configurable, it is useful to have an Abstraction Layer that deals with the configuration rather than to have these configurations performed in the Business Logic Layer. Technically, there is no difference between the Business Logic Layer and Abstraction Layer, it is just a question of design.
From a model-driven aspect, the Composite Application Framework (CAF) should be used to model the business objects (attributes, nodes, and services) and generate and manage the local and remote persistency of the business objects. This helps to reduce manual coding and to get faster and safer results.
More information: Composite Application Framework
A valid approach to implementing business objects within this layer is using the Java EE 5 open-standard technologies. In addition to the inherent portability, the latest edition of the platform provides you with a lightweight persistence framework (Java Persistence API) and simplified business logic components (EJB 3.0). With the option to expose your enterprise bean objects as Web services, you can easily consume your Java EE 5-based services in CAF, or directly in the process and user interface layers of a composite application.
More information:
Developing
Java EE 5 Applications