The AF_Modules/MessageTransformBean module is shipped with the module processor. You use this module to call classes written for the Adapter Engine (SE).
You can set MIME content fields and configure the dispatcher using the module MessageTransformBean that is compatible to the dispatcher and which is contained in the Adapter Engine (SE). With this module you can directly call the classes in the module processor which were written for the Adapter Engine (SE).
For specific adapters in the Adapter Engine (SE) you have the option of modifying the payload of a XI message by using external Java classes. The Java classes must have implemented the Transform Java interface for this.
The classes com.sap.aii.af.sdk.xi.adapter.Conversion and com.sap.aii.af.sdk.xi.adapter.XSLTConversion contained in the Adapter Engine (SE) are available directly.
You must deploy all other classes that in XI 2.0 were made available by means of an enhancement to the Java classpath in the Adapter Engine for the Adapter Engine (SE) by following a special procedure.
In the Adapter Engine (SE), each parameter is proceeded by a namespace (namespace1 in the example), which describes the actual implementation of the dispatcher. Two services are defined for this dispatcher, and the parameters of each service are in turn identified by a further namespace (Plain2XMLService und XSLTService in the example).
Since the parameters have been transferred in a module configuration, the Adapter Engine already has this information and consequently the information is not included in the parameter names.
Deploy External Classes for the Module Processor
To load such Java classes from the AF_Modules/MessageTransformBean module, you must make them known to the relevant Java libraries (jar files) in the AS Java application.
To do so, install and modify the com.sap.aii.adapter.lib.sda archive file:
<reference type="library" strength="weak">com.sap.aii.messaging.runtime</reference>
Otherwise deployment will terminate with the following message: Already been deployed.
The module processor now knows the libraries.
The com.sap.aii.adapter.lib.sda archive is used by multiple components and Adapter Engine adapters.
Ensure that you do not delete any components from the archive otherwise the JDBC and JMS adapters may cease to function correctly.
Consequently, always add the classes you require to the last deployed version of com.sap.aii.adapter.lib.sda only.
Set MIME Content Fields
More information about the fields available in RFC1806, RFC2045 and RFC2378.
Under Parameter Value enter attachment or inline.
Enter the description under Parameter Value.
Enter the payload type under Parameter Value.
Under Parameter Value enter either true or false.
This defines whether module errors are evaluated as permanent or temporary.
In the File/FTP adapter, an evaluation can be made if error archiving is activated.
Specify Parameters for the Dispatcher Class
More information see below under Example.
If you call MessageTransformBean without specifying a dispatcher class then only the values for the MIME content fields are set.
The example shows the configuration for the Adapter Engine (SE) and the migrated configuration in the module processor.
Adapter Configuration for the Adapter-Engine (SE)
Value: Plain2XMLService (Plain2XMLService is a user-defined name)
The following entries in the conversion file then produce the subsequent XSLT conversion:
XSLT Conversion in Adapter Configuration for the Adapter-Engine (SE)
Value: XSLTService (XSLTService is a user-defined name)
Processing Sequence for Module Processor
All modules are of type Type L.
If, like here, you configure the module chain explicitly, you must set the last module in this chain adapter-specifically.
More information: Extending the Module Chain for SAP Adapters in the Module Processor
Module Configuration for Module Processor
Which Java class is to be executed is always set for the module by using the Transform.Class parameter. This corresponds to the <namespace>.class parameter in the configuration of the Adapter Engine (SE).
Specification of the document name and namespace is only mandatory if the payload of the message is processed in message mapping.