
Questions Answered
How does the Developer Studio support the development of persistent data types?
What are CAF-based Business Objects for?
How can I reuse data types that are already predefined in the ES Repository?
What do I have to consider when developing persistent data types based on the Java EE standard?
Introduction
Each composite application works with a well-defined set of data objects, such as customer, purchase order, or product. In your system landscape you will be able to find data models that are already available. However, some scenarios may require that you create new data objects to store the data in the database of the composite application.
When you add the attributes for a new data object, you must decide whether you want to create freestyle data types or reuse type definitions that are already predefined as SAP global data types in the Enterprise Services Repository. The usage of the global data types enables you to achieve a high level of reusability for data types that have been defined according to the unification and standardization (governance) process.
More information: Global Data Types
What kind of data objects you actually create for your composite application depends on the services that are already implemented in you system landscape.
Business Objects in CAF
In CAF, a business object represents the smallest, clearly identifiable data unit involved in a business scenario. You create business objects in CAF to provide a simplified and uniform interface from within the business logic layer to access the data model that might already exist in your system landscape. The CAF design time provides a toolset to create business objects within a Developer Studio project, to store attributes and their data types there, as well as to generate the associated database tables. All new business objects are already equipped with a set of predefined attributes and can be declaratively extended. When modeling business objects, persistence options (local or remote persistence), authorization behavior, and relations between objects can be defined and the implementation of fundamental operations (read, write, update, delete, and query functions searching for data records) can be generated.
More information: Business Objects
Persistent Data Types Based on Java EE Standard
When business logic based on Java standards is already implemented, you can continue to use these components and just consume them in your composite application. The Developer Studio provides a range of tools and utilities for standard-based development of components of the programming standards Java EE and J2EE. Moreover, the developer can define data types and Java Dictionary tables that are defined in the Developer Studio in a database-independent way and can deploy them on the application server.
More information: Overview of the Java Persistence API
Activities
Creating Business Objects with CAF
Set up the CAF-related development components
Depending on the approach you use (top-down or bottom-up), you have the option of creating the CAF development components as part of a product or explicitly creating a separate CAF project.
Create a new product in the Composite Designer
More information: Creating Composite Applications
or
Create a CAF-related development components
More information: Creating Composite Application Development Components
Provide new business objects with CAF
More information: Modeling Business Objects
Creating Persistent Data Types Based on Java EE Standard
Usually standard Java EE applications are not SAP Component Model based, therefore you cannot use them in the Composite Designer or in conjunction with the SAP NetWeaver Development Infrastructure. Therefore, in the first step, you must migrate a standard Java project to the SAP Component Model.
Migrate the Java standard projects
More information: Migrating Standard Projects into Development Components
Provide new Java Dictionary tables
More information: Providing Java Dictionary Tables and Data Types
Provide new persistent data types within the scope of the Java EE model
More information: Developing Persistence
Next Steps