Understanding Design Guidelines Understanding Design Considerations

Designing and Developing Enterprise Business Services 10-3

10.2 Designing the EBS

This section includes the following topics: ■ Section 10.2.1, Understanding Design Guidelines ■ Section 10.2.2, Understanding Design Considerations ■ Section 10.2.3, Establishing the MEP of a New Process EBS ■ Section 10.2.4, How to Establish the MEP for a New Process EBS ■ Section 10.2.5, How to Handle Errors ■ Section 10.2.6, How to Secure the EBS ■ Section 10.2.7, How to Configure Transactions ■ Section 10.2.8, How to Guarantee Delivery ■ Section 10.2.9, How to Define the EBS Service Contract

10.2.1 Understanding Design Guidelines

The methodology for designing and implementing an EBS is a contract-first methodology, that is, the contract is defined and created before the EBS is implemented. The contract for an EBS is defined as a WSDL document. For the business task EBS, use the WSDLs from the Enterprise Service Library of the Foundation Pack. For the business activity EBS, use the TemplateEBS.wsdl available in the Foundation Pack and create a process EBS WSDL. Customers wanting to create a new EBS for an EBO that was not delivered as part of Enterprise Object Library can use TemplateEBS.wsdl as a model to create the new WSDL. Service operations supporting the synchronous request-response MEP are defined in one port type. The operation should have input, output, and fault message defined. Service operations supporting fire-and-forget MEP should be defined in one port type and the operation must have an input message defined. Service operations supporting an asynchronous request-delayed response pattern should have two operations, one for sending the request message and another for processing the response message. Each of these two operations must have an input message. Two different portTypes exist, one for each operation. The service operation for processing the response message should reside in a port type that has Response as the suffix. The EBS WSDLs should have two kinds of portTypes: ■ A portType for all operations used for modeling synchronous request-response operations and request-only operations. The name does not specify the Request. ■ A portType for asynchronous response operations. The name specifies Response. You should create two Mediator routing services for each of the portTypes.

10.2.2 Understanding Design Considerations

When designing EBS, consider the following: ■ What is the service for? – Your enterprise should have only one EBS for a particular business function, and it should be independent of any application. 10-4 Developers Guide for Oracle Application Integration Architecture Foundation Pack – The service can implement multiple business operations defined in EBS WSDL. – It should have implementations for all the business operations for a business object. – The service should also contain response operations, which are required for the asynchronous request-response pattern. ■ How will the service be invoked? – The service is invoked using HTTP transport as a Web service. – When the calling client is co-located with this service, then the call can be configured to be a local invocation using optimized binding to improve performance and propagate transactions. ■ What invokes the service? – The service can be invoked by an application if the application has the capability to send an Enterprise Business Message EBM and can perform all the functions of requester ABCS. – When the application does not have the capability to invoke this service directly, then the requester ABCS invokes this service. – An EBF flow that orchestrates across multiple business objects can also invoke this service. ■ How do you interact with the application? – If the application has the capability to receive the EBM message, the EBS can call the application using HTTP as Web service call. – If not, then you must create and call a provider ABCS. ■ What type of interaction is between client and EBS? – The client can call EBS using any of the three MEPs.

10.2.3 Establishing the MEP of a New Process EBS