Routing at the EBS Guidelines for EBS Routing Rules

10-10 Developers Guide for Oracle Application Integration Architecture Foundation Pack

10.4.2 Routing at the EBS

Routing rules are specified for each operation defined on EBS services. The system uses routing rules to determine where to route the incoming EBM, either to an EBF, EBS, ABCS, or the Composite Application Validation System CAVS. Routing rules are specified as XPath expressions in the filter of the Mediator routing rule. Routing rules must be mutually exclusive since all the rules are evaluated and messages are routed to an end point based on the rule evaluation.

10.4.3 Guidelines for EBS Routing Rules

At a minimum, each EBS operation should have these rules: ■ One routing rule for CAVS enabling. This rule should check whether the EBM Header MessageProcessingInstruction EnvironmentCode is set to CAVS. ■ One or more routing rules to connect to the provider ABCS or EBF. The filter expression specified in these routing rules must ensure that the message is not a test message. For each ABCS or EBF, one routing rule exists. The conditions can be one of these: ■ Target system ABCS populated in the EBM header Example of a filter expression for a SalesOrderEBS routing rule for determining the target system ABCS: In this case, the filter has an expression to check whether the target system ABCS in the EBM header was prepopulated and the Override Routing Indicator is set to False. sordebo:QuerySalesOrderEBMns5:EBMHeaderns5:Targetns5:ID = SEBL78_01 and Target: Oracle EBusiness provider ABCS XPath Filter: MessageProcessingInstructionEnvironmentCode=PRODUCTI ON or notMessageProcessingInstructionEnvironmentCode text and EBMHeaderTarget ApplicationTypeCode=EBIZ or notEBMHeaderTargetIDtext and aia:getSystemTypeEBMHeaderSenderID=EBIZ Transformation: None Explanation: MessageProcessingInstructionEnvironmentCode=PRODUCTI ON or is missing entirely and either Target application type is already specified as EBiz, or else no Target is specified and the Sender application type is not EBiz. Target: CAVS XPath Filter: MessageProcessingInstructionEnvironmentCode=CAVS Transformation: None Explanation: MessageProcessingInstructionEnvironmentCode=CAVS Table 10–2 Cont. Delivered Routing Rules Target Siebel provider ABCS Designing and Developing Enterprise Business Services 10-11 sordebo: Query SalesOrderEBMns5:EBMHeaderns5:Targetns5: Override RoutingIndicator = false ■ Content-based routing In this case, the content of the EBM is evaluated to determine the target system ABCS. The filter expression should ensure that the target system information was not prepopulated in the EBM header. Example expression: starts-withsordebo: CreateSalesOrderEBM sordebo: DataAreasordebo: CreateSalesOrdersordebo: SalesOrderLine sordebo:SalesOrderLineSchedulens5:ShipToPartyReference ns5:LocationReference ns5:Addressns5:CountrySubDivisionCode,9 and sordebo:CreateSalesOrderEBMns5:EBMHeader ns5:Targetns5:ID = ■ Parallel Routing EBS should use parallel routing when you want each target service to invoke in its own transaction and retry the target service. For more information, see Chapter 11, Designing Application Business Connector Services. ■ Enable error handling and logging EBS should handle errors to allow clients or administrators to resubmit or retrigger processes through a central error handler. For more information, see Chapter 24, Configuring Oracle AIA Processes for Error Handling and Trace Logging .

10.4.4 How to Identify the Target System at EBS