When to Use Web Services with SOAPHTTP

Establishing Resource Connectivity 21-5 A unique identifier for the application instance is needed to set the cross reference for the entity IDs, so this is also expected in the payload. ■ Event session locale The locale information from the client session provides context to the request being made by the application. This helps in ensuring the response is in the same locale context. The locale specific headers should be negotiated with the application teams to decide upon the ABM header attributes. Setting and retrieving the locale specific information is a factor in the ABCS implementation during the request and response transformation steps done on ABM. Outbound Interaction For outbound interactions, the ABCS invokes the participating application APIs exposed as Web services. The WSDLs of the participating application Web services are consumed by the ABCS.

21.2.2 When to Use Web Services with SOAPHTTP

You can leverage Web services with SOAPHTTP to fetch information from the applications and provide it to the requesters. They are useful when the requirement for interaction reliability is low and operations are limited to querying the information stores. The message format is XML Extensible Markup Language. This mode of connectivity is used in AIA for: ■ Request-response ■ Request only

21.2.2.1 Request-Response

The SOAP client uses an HTTP GET method to request a representation of a specified resource. The SOAP server triggers the executable and responds back with the output. This is an idempotent action, meaning that multiple identical requests should have the same effect as a single request. For example, a Customer Sales Representative queries the Customer Master Data Management system for existence of a customer record before creating a new customer in the system.

21.2.2.2 Request Only

The SOAP client uses an HTTP POST to submit data to be processed for example, from an HTML form to the identified resource. The data is included in the body of the request. This may result in the creation of a new resource or the updates of existing resources or both. This is a non-idempotent action; therefore sending an identical POST request multiple times may further affect state or cause further side effects. For example, a Customer submits an order for processing from a Composite Application UI.

21.2.2.3 Advantages of Using Web Services with SOAPHTTP

Web services with SOAPHTTP are: ■ Platform independent ■ Language independent 21-6 Developers Guide for Oracle Application Integration Architecture Foundation Pack

21.2.2.4 Disadvantages of Using Web Services with SOAPHTTP

XML format of message processing is slower; therefore, messages must be smaller or must leverage compression techniques. Inherently, HTTP is stateless retains no data between invocations; therefore, it needs an explicit login for every call, leading to performance overhead. The notion of atomic transactions with state management is not supported; workarounds are session state management, where a connection can be reused for more than one request as discussed in Section 21.2.3, Session Management for Web Services with SOAPHTTP .

21.2.2.5 Important Considerations for Using Web Services with SOAPHTTP

AIA requires that the developed and deployed Web services conform to published WS-I profiles to foster interoperability. ■ Leverage WS-Security to secure message exchanges using XML Encryption and XML Signature in SOAP; alternative is using secure HTTP HTTPS. ■ Leverage WS-Addressing to insert address in the SOAP header. ■ Leverage WS-ReliableMessaging to reliably deliver messages between distributed applications in the presence of software component, system, or network failures.

21.2.3 Session Management for Web Services with SOAPHTTP