This chapter describes how to define routing rules for multiple part (multipart) messages for an Oracle Mediator service component, including defining filters, transformations, and validations.
This chapter includes the following sections:
For more information on routing rules, see Chapter 20, "Creating Oracle Mediator Routing Rules."
Mediator includes support for importing multipart WSDL files in the Mediator Editor and for working with multipart source and target messages, which include multipart filter expression building, multipart schema validation, and transformations between multipart source and target messages for requests, replies, faults, and callbacks.
The Mediator Editor with a multipart source looks similar to Figure 21-1.
This section describes how to work with different types of multipart messages.
If you specify a filter expression for a multipart message, then the Expression Builder displays all message parts under the in variable, as shown in Figure 21-2:
If you add a validation for a multiple part message, then the Add Validation dialog displays a list of parts from which you can choose one part, as shown in Figure 21-3. You specify a Schematron file for each request message part. Oracle Mediator then processes the Schematron files for the parts.
If you create a new mapper file for a multipart message, then the generated mapper file shows multiple source parts in the XSLT Mapper, as shown in Figure 21-4:
If you assign values using a source expression and invoke the Expression Builder from the Assign Value dialog, the Expression Builder displays all message parts under the in variable, as shown in Figure 21-2. This is the same as specifying filter expressions.
The method to create transformations and assign values to multipart reply, fault, and callback source messages is the same as working with request source messages.
You cannot specify filter expressions or add validations for reply, fault, and callback messages.
If a routing target (that is, a request, reply, fault, or callback) has a multipart message, then the transformation is handled in a slightly different way. This is because the XSLT Mapper does not support multipart targets. In such a case, the Mediator creates and coordinates a separate mapper file for each target part, as shown in Figure 21-5: