How to Set Up the Extension Point Pre-ProcessEBM How to Test the Extensibility with Servlet as Sample Extension Service

13-14 Developers Guide for Oracle Application Integration Architecture Foundation Pack Figure 13–7 Setting up the Extension Point Pre-ProcessABM

13.1.10 How to Set Up the Extension Point Pre-ProcessEBM

When AIA Service Constructor is used to construct ABCS, the extension point is already set up by the tool. The Requester ABCS requires the following process activities in the order specified: 1. Switch The Switch activity determines if the service invocation at the extension point is to be made or not. This is achieved by checking the value of the property variable in the file AIAConfigurationProperties.xml. The name of the configuration parameter is ABCSExtension.PreProcessEBM. Check the parameter for a value of true. This is achieved by using an appropriate AIAXPathFunction in the switch expression. 2. Assign-Invoke-Assign The Assign-Invoke-Assign subsequence of process activities is embedded in the Switch activity. ■ Assign The Assign activity assigns the value of EBM to the input variable of the invoke step that follows. ■ Invoke The Invoke activity makes the service-call on the partner-link. The programming model for the ABCS extension points sets up a contract on the service to return the same payload that it receives. ■ Assign The Assign activity assigns the value of the response payload from the service invocation to variable of the process activity that follows. Figure 13–8 illustrates the sequence: Completing ABCS Development 13-15 Figure 13–8 Setting up the Extension Point Pre-process EBM

13.1.11 How to Test the Extensibility with Servlet as Sample Extension Service

The sample extension service used in the document is a java servlet that mirrors the input payload back. The Servlet shown in Example 13–2 as the endpoint has the advantage that it can be used as a partner-link service to test any extension. This is useful when you must test any extension-aware ABCS that have PartnerLink services defined using Abstract WSDL. Example 13–2 Servlet to test extension service name=CreateCustomerSiebelReqABCSImplExt port name=CreateCustomerSiebelReqABCSImplExt binding=tns:CreateCustomerSiebelReqABCSImplExt_Binding soap:address location=http:{host}:{port}MirrorServletmirror port service The implementations for the methods PreProcessABM are not required; the SOAP request is treated as the Servlet payload, and the Servlet outputs back the entire payload. The SOAPAction element is also rendered a dummy since it is not used at the Servlet-side. The test Servlet is a java file with name Mirror.java. When deployed, it is accessible at: http:[hostname].com:[portno]Mirrormirror

13.2 Handling Errors and Faults

To determine how faults are handled and passed by a participating application, you must make sure the application error handling capabilities are in line with the integration platforms error handling capabilities.