Projects in Composite Application
Services
You use Composite Application Services (CAS) projects as the basis for business application use in the Composite Application Framework Core (CAF Core) environment. CAF Core is delivered with a core project, this project serving as a basis for all other projects created with the modeling perspective in SAP NetWeaver Developer Studio.
However, the projects you create for your specific needs are not the only projects contained in CAS. These six other projects are used to relay your CAS-designed project information through the Web Dynpro environment to CAF Core.
The CAF-specific core project, which contains objects that can be used by any composite application, is delivered with CAF. You will not see it as an independent project in CAS, but its objects are available at certain levels in the models you have created.
The following projects are automatically created in CAS when you create a new development component (DC) project:
● Dictionary
● EJB Module
● Metadata
● Enterprise
● Web Dynpro Model
● UME Permissions
The core project contains predefined and commonly used services that are easy to integrate into any composite application. The services included in the project are referred to as core services and are commonly used entities that span across an entire application. The core project is read-only.
The core project is a central component delivered with the CAF Core component. The services delivered are installed together with the CAF Core library.
For information about the services and data types delivered with the CAF library, see Composite Application Services and Data Types.
A dictionary project allows you to create and manage table definitions locally after being created in SAP NetWeaver Developer Studio. A suitable project framework for the new dictionary is automatically generated after you create a new project in the Composite Application Services application.
In a dictionary project, all tables, views, data elements, and domain information are saved in an XML format. Any changes you make to services created in CAS are saved in the dictionary project in the same project source directory.
After you have created a composite application project, a Software Deployment Archive (SDA) file is generated and saved in the deployment directory. After you deploy the project archives to the J2EE engine server, all tables, views, data elements, domains, and metadata are stored and changed in the project specific data base. This is how a part of the persistence for your application is created.
In the dictionary project, you also specify the custom enumeration type package for enumeration maintenance in the CAF runtime. See Creating Custom Enumerations for this procedure.
The EJB-Module project contains all compiled coding relevant to the entity and application services created in CAS. This information is contained in a Software Component Archive (SCA) file and is integrated into the enterprise project. An SCA file represents one specific software component version. It contains a quantity of SDA files in the respective version. EJB Module information is also stored in the corresponding deploy directory.
When you create an EJB Module development component, the SAP NetWeaver Developer Studio will automatically create a public part for assembly that contains the classes for the beans and a public part for compilation that contains the bean interfaces. You should not modify automatically generated public parts.
In the metadata project, an EAR file is created and is also stored in the deploy directory of the project you create in CAS. These files contain all metadata of the CAF project, which permits the availability of this information at runtime. Metadata describes, for example, all entity and application services, relations, and operations.
In the enterprise project, an EAR file contains the compiled code and references to the dictionary and metadata projects.
The Web Dynpro project is a model based on the entity and application service project definitions. It is automatically generated when you create your CAF Core project in CAS. The Web Dynpro model is necessary so that entry screen fields can be mapped to the corresponding operations, fields, and services. This is how the data is displayed.
A Web Dynpro model ensures the clear division between the definition of the user interface and the implementation of the application logic. In addition to the project you create for CAF Core, you must use a Web Dynpro model to make the data available to the Web Dynpro application.
The Web Dynpro model is used to reflect the metadata available in an application. This includes entities, queries, and actions. You can map to context nodes of Web Dynpro applications at design time by generating model classes, thus making it easy and convenient to bind visual elements to application data.
The interfaces you generate provide typed access to the data or query parameters at runtime. If an attribute is removed from the metadata, the access to this attribute will be found at compile time by a corresponding compile error.
However, you must first change certain properties of the model before it can be integrated in CAF Core. See Modifying the Web Dynpro Model for a detailed description of what properties need to be modified.
For more information about creating a Web Dynpro model, see the SAP Help Portal.
A UME permissions project contains an SDA file which is generated and created in the deploy directory. This project is similar to the dictionary project.