
Once you have imported an external service in your composite application, you need to map the external service operations to application service operations. This way you use external services without implementing code. If the external service you have imported has a huge number of operations and attributes, you can create automatic identical mappings to an application service.
The CAF application uses an application service operation to send an input message. The input message attributes are mapped to the remote service operation input attributes (input mapping). The remote service processes the input attributes and generates output attributes.The output message attributes are mapped to the application service operation output attributes (output mapping).
The application service operation returns the output attributes back to the caller. This process is described in the figure below:
For more information, see Defining Business Object Persistency .
Mapping External Service to an Application Service
Arrows appear indicating the direction and type of attribute mapping:
Creating Automatic Mappings for Application Services
Mapping an External Service to a Business Objects Operation
Select the proper external operations regarding semantics.
For example, the operation getUserInfo is more likely to be mapped to a read operation than to a create operation.
Changing the Default Mapping Behavior
You can change the default behavior of the mappings editor. Note that the difference between the structure and the attributes' mapping is in the automatically generated code. For example if you choose attribute mapping, the amount of generated code is greater than the amount of code that will be generated if you have selected structure mapping. If the simple types in your service are many, we recommend that you choose structure mapping. However, if you have to exclude types from the structure, choose attribute mapping.
By default, the mappings you create are of type structure. To change that behavior:
The application service or business object node operations are now mapped, and if called at runtime they execute the mapped external service operation according to the attribute mappings.
To remove the operation mapping you created, choose Delete Mapping.