Tuesday, May 7, 2013

This is Chapter-3 of Oracle SOA interview questions and answers series.

Question: What is role of Mediator?
Answer: Oracle Mediator provides a lightweight framework to mediate between various components within a composite application. Oracle Mediator converts data to facilitate communication between different interfaces exposed by different components that are wired to build a SOA composite application.


Question:Difference between Mediator & OSB?
Answer: OSB is all together different tool which is used for integration like SOA but the main purpose of OSB is to route the information and same we can do with mediator. The main difference two is, we go for Mediator when we want to route information between different components inside composite and go for OSB when we want to route the information between composites. Mediator is used light weight mediation and OSB is used for heavy weight mediation.


Question: What is echo in Oracle Mediator?
Answer: The purpose of the echo option is to expose all the Oracle Mediator functionality as a callable service without having to route it to any other service. For example, you can call an Oracle Mediator to perform a transformation, a validation, or an assignment, and then echo the Oracle Mediator back to your application without routing it anywhere else.

For synchronous operations with a conditional filter, the echo option does not return a response to the caller when the filter condition is set to false. Instead, it returns a null response.

The echo option is available for asynchronous operations only if the Oracle Mediator interface has a callback operation. In this case, the echo is run on a separate thread.

Question: What is resequencing in Mediator ?
Answer: The resequencing feature of the Oracle Mediator reorders sets of messages that might arrive to the Oracle Mediator in the wrong sequence. You can define resequencing for all operations in an Oracle Mediator or for a specific operation.

Question: Resequencing options available in mediator?
Answer:
  • Standard (based on input Id)
  • FIFO(based on time)
  • Best Efforts

Question: What is Schematron Validation?
Answer: Schematron is an XML schema language, and it can be used to validate XML contents in an XML payload.


Question: Types of routing exist in Mediator?
Answer: Static & Dynamic Routing.


Question: What is Dynamic Routing in Mediator ?
Answer: A dynamic routing rule lets you externalize the routing logic to an Oracle Rules Dictionary, which in turn enables dynamic modification of the routing logic in a routing rule.

When you choose to create dynamic routing rule then it creates a new business rule service component that is wired to the Oracle Mediator service component within the SOA composite of the Oracle Mediator service component. The business rule service component includes a rule dictionary. The rule dictionary is a metadata container for the rule engine artifacts, such as fact types, rulesets, rules, decision tables and so on.

Inside routing rules, you need to set endpoint URI.



Question: Types of Static Routing rules?
Answer: Sequential & Parallel.



Question: Difference between Sequential & Parallel static routing rules ?
Answer:

Sequential
parallel
Oracle Mediator evaluates routings and performs the resulting actions sequentially. Sequential routings are evaluated in the same thread and transaction as the caller
Oracle Mediator queues and evaluates routings in parallel in different threads.
The messages of each Oracle Mediator service component are retrieved in a weighted, round-robin fashion to ensure that all Oracle Mediator service
components receive parallel processing cycles. This is true even if one or more Oracle Mediator service components produce a higher number of messages
compared to other components. The weight used is the message priority set when designing an Oracle Mediator service component. Higher numbers of parallel
processing cycles are allocated to the components that have higher message priority.
You can set the Priority field in the Mediator Editor to indicate the priority of an
Oracle Mediator service component. Priorities can range from zero to nine, with
nine being the highest priority. The default priority is four.
Oracle Mediator always enlists itself into the global transaction propagated through the thread that is processing the incoming message. For example, if an
inbound JCA adapter invokes an Oracle Mediator, the Oracle Mediator enlists itself with the transaction that the JCA adapter has initiated.
Oracle Mediator initiates a new transaction for processing each parallel rule. The initiated transaction ends with an enqueue to the Oracle Mediator parallel
message dehydration store.
For example, if an Oracle Mediator service component has one parallel routing rule, one message is enqueued on the Oracle Mediator parallel message dehydration store. The parallel message dispatcher to the store then initiates a transaction, reads the message from the database store, and invokes the target component or service of this routing rule. The transaction initiated by the listener thread is a completely new transaction and is propagated to the target components.
Oracle Mediator propagates the transaction through the same thread as the target components while executing the sequential routing rules.
Oracle Mediator never commits or rolls back transactions propagated by external
entities.
Oracle Mediator commits or rolls back transactions because it is the initiator of these transactions.
If an operation or event has both sequential and parallel routing rules, first sequential routing rules are evaluated and actions are performed, and then parallel routings are queued for parallel execution.
Oracle Mediator manages the transaction only if the thread-invoking Oracle
Mediator does not already have an active transaction. For example, if Oracle
Mediator is invoked from inbound SOAP services, Oracle Mediator starts a
transaction and commits or rolls back the transaction depending on success and
failure.


Question: Which static routing rule support fault policy ?
Answer: Parallel rules only.


Question: How many faults can Oracle Mediator service engine throw ?
Answer: Only One

{http://schemas.oracle.com/mediator/faults}mediatorFault.



Click here to see more interview question and answers on Mediator.


Click here to go to Chapter-2                                                              Click here to go to Chapter-4





0 comments :

Post a Comment