• LOGIN
  • No products in the cart.

SOA BPEL Mediator OSB Development 12c Interview Questions

What is Oracle Service Bus or OSB ?

The larger, powerful service bus

Used for message brokering

Message Transformation over XQuery & XSLT

Extended functionality important for enterprise-wide integration like

Message Throttling

Service Pooling

Reliable Messaging

Development through Eclipse IDE or Service Bus Console

OSB specific deployment

What are the key features of Oracle Service Bus or OSB ?

Supports Multiprotocol Messaging

Enables Location Transparency

Handles Dynamic Routing

Enables Message Transformation

Enables Service Orchestration

Supports Message Enrichment

Provides Service Security

Implements Service Level Agreement

Explain in detail about key features of Oracle Service Bus or OSB ?

Dynamically transform and route services using simple and/or complex routing rules and/or message payloads

Ability to orchestrate services from existing IT systems with disparate messaging protocols without needing to change the systems and styles

Isolate service location changes

Rapidly respond to business needs by quickly configuring routing rules based on changes to business rules or existing IT systems, without coding

Orchestrate several services to create new one

Supports message enrichment

Enables optimized, pluggable, policy-driven transport and message level security

Implements rules-driven, configurable Service Level Agreement (SLA)

SOA BPEL Mediator OSB Development 12c Training

Describe OSB’s role as a Message Broker ?

A message broker is an architectural pattern for message validation, message transformation and message routing

It mediates communication amongst applications, minimizing the mutual awareness that applications should have of each other in order to be able to exchange messages, effectively implementing decoupling

OSB Message broker:

Decoupling (via interfaces)

Routing: provides routing to the correct service instance according to technical or functional data to take into account the partitioning of the components business applications

Message transformation and enrichment

Service composition/aggregation

Light orchestration (stateless)

Version management

Protocol break

Message validation

Error handling

Content Control

Schema Validation

What are some of the major protocols that OSB supports ?

HTTPS

SOAP

JMS

SMTP/POP/IMAP

Tuxedo

EJB

Native MQ

File

FTP

STFP

Email

What is meant by Location Transparency ?

A service bus is used for endpoint virtualization

In 11g stack, Oracle Service Bus (OSB) is the primary service bus

So, we can expose proxy service at OSB t0 outside world and in exposed OSB proxy message flow, route incoming request to any business service on the basis of routing logic

Note: alternatively, use Mediator in SOA 11g to expose service and use mediator routing logic to route to actual service

OSB Location Transparency:

OSB creates “Location Transparency” through isolation of consumers from service providers and act as a proxy layer to transport the message

OSB can be used to isolate service location changes

What is Message Enrichment ?

Getting additional information from the existing service using Service Callout option

And then adding/inserting this additional information (required) into an incoming message/request XML before it route to the service endpoint

In OSB 11g, it is Business Service

Sometimes, you may have legacy application coded in core Java or EJB, and then at times you may need Java Callout

Where does the Service Bus fit in the SOA landscape ?

Significance of OSB in an SOA Landscape

Oracle Service Bus is at the heart of Oracle’s comprehensive business integration solution and belongs to the Oracle Messaging product line

Oracle Service Bus is primarily targeted for managing different types of services, and providing traditional message brokering across heterogeneous IT environments

The lightweight, stateless, high-performance architecture of Oracle Service Bus and its converged intelligent message mediation and service life cycle management capabilities, make it an ideal core component of distributed services networks

It is designed to fit into the broader IT Service-Oriented Architecture (SOA) landscape as a distributed service management intermediary and can be integrated with other Oracle business process management solutions in distributed heterogeneous deployments

How does a Service Bus facilitate a loosely coupled architecture ?

Described solely by its interface contract and behavioral attributes (i.e. hides its implementation and facilitates loose-coupling)

Loose Coupling of Services:

Loose coupling is achieved through abstracting and resolving the differences between two or more systems in order to facilitate a seamless integration

An ESB/OSB provides or helps to mediate the differences along the following lines:

  1. Transport Protocol
  2. Interaction Pattern (message exchange pattern)
  3. Shape (Interface / Schema)
  4. Security Paradigm

More definition for loose coupling of services:

Oracle Service Bus establish loose coupling between service clients and business services

OSB maintains the central point security and monitoring

Oracle Service bus is an intermediary that processes incoming service request messages, determines routing logic, and transforms these messages for compatibility with other service consumers

It receives messages through a transport protocol such as HTTP(S), JMS, File, and FTP, and sends messages through the same or a different transport protocol

SOA is a kind of architecture that uses services as building blocks to facilitate enterprise integration and component reuse through loose coupling

Explain OSB Service Orchestration ?

Combining existing services to make new services

This is light orchestration as compared to the BPEL orchestration in SOA which may be Synchronous/Asynchronous

But in OSB 11g, it is stateless

There are limitations with OSB 11g as compared to the BPEL/SOA which could be used for maintaining states for hours/days as per our business needs

What is a Proxy Service ?

A proxy service is what the service bus exposes to service consumers and implements the virtualization logic

A proxy service can route messages to multiple business services; you can choose to configure a proxy service with an interface that is independent of the business services with which the proxy service communicates

In such cases, you can configure a proxy service message flow definition to route a message to the appropriate business service and map the message data into the format required by the business service interface

It is exposed to the calling applications or services

Proxy services are Oracle Service Bus definitions of intermediary Web services that Oracle Service Bus implements locally on Weblogic Server

You can think of proxy services as the services published by OSB

Instead of your service clients calling the services directory, they call OSB proxy services instead

Few more definitions of Proxy Service:

Proxy services are definitions of generic intermediary Web services that are hosted locally on Oracle Service Bus

A proxy service communicates with other services in the IT infrastructure through interfaces, which may or may not be identical to that of a service provider or service consumer business service

Proxy services can route messages to multiple business services, using their configured independent interfaces

Proxy services can be defined and configured using the Oracle Service Bus Console

They are configured by specifying their

  1. interface
  2. type of transport OSB uses
  3. and their associated message processing logic
  4. Q) What is Message Flows in OSB ?

Message flows are definitions used for implementing proxy services within Oracle Service Bus

Message flow modeling involves configuration of message processing logic in proxy service’s message flow definitions

This logic includes activities such as transformation, publishing, reporting, and exception management

You can use the graphical modeling tools available in Workspace Studio/OEPE and in the Oracle Service Bus Console to perform message modeling

Oracle Service Bus proxy service implementations are defined in message flow definitions using components such as

  1. Pipelines
  2. Branch nodes
  3. Route nodes

Another explanation for Message Flow:

In Oracle Service Bus, a message flow is the implementation of a proxy service

You can configure logic for the manipulation of messages using proxy service message flow definitions

This logic includes such activities as transformation, publishing, and reporting, which are implemented as individual actions within the stages of a pipeline

Message flow in OSB is the most important part

It defines the request message flow from Start Node to Route activity and also defines the response message flow from Route to Start Node

It contains Pipeline Pairs, Branch Nodes, Route Nodes, Stages, and Actions etc

What is a Business Service ?

Business services are Oracle Service Bus definitions of the enterprise services that exchange messages during business processes

A business service and its interface can be defined and configured using the Oracle Service Bus design-time tooling

To configure a business service, you must specify its interface, the type of transport it uses, its security requirements, and other characteristics

A business service definition is similar to that of a proxy service, but it does not have pipelines (a message flow)

It connects to the EIS (Enterprise Information System) layer (

In an enterprise architecture, EIS is typically a SOAP based Web Services

Can we expose any Business Service to external clients or subscribers ?

No, we cannot expose Business Services to external clients or subscribers

We need Proxy Services to expose to external world

SOA BPEL Mediator OSB Development 12c Training

Can we have Proxy Services without Business Services ?

Yes we can have Proxy Services without Business Services, but that will be just a dummy service

EIS layer cannot be connected using that Proxy Service

Explain Service Callout in OSB ?

Action is to be used in a Pipeline pair to call the services

It should be noted that the Service Callout action is used only for invoking synchronous request-response operations

OSB’s service callout action offers greater flexibility for more sophisticated message flows

The service callout action is used inside a message flow to call on another service registered within OSB to perform necessary action on the message

The response returned by that service is assigned to a local variable

The variable can then be used within the current message flow

The service callout action can be used configure a synchronous (blocking) callout to an OSB-registered proxy or business service

The service types that can be called could be –

WSDL Web Service

SOAP

Any XML Service

Messaging

Whether OSB Service Callout is Synchronous or Asynchronous ?

Synchronous request-response used in pipeline-pair

And it is blocking

Explain Java Callout in OSB ?

Sometime, you may have legacy application coded in core Java or EJB, and then at times you may need Java Callout

Invoking / accessing method should be “public” and “static”

What are the different types of Pipelines ?

Request pipeline

Response Pipeline

What is a Pipeline Pair ?

Pipeline pairs are request and response pipelines

The request pipeline definition specifies the actions that Oracle Service Bus performs on request messages to the proxy service before invoking a business service or another proxy service

The response pipeline definition specifies the processing that Oracle Service Bus performs on responses from the business or proxy service that the proxy service invokes before returning a response to a client

NOTE: A Pipeline Pair node can have only one direct descendant in the Message Flow

Stage: A stage is a container of related activities to manipulate messages passing through the pipeline

February 8, 2020
GoLogica Technologies Private Limited. All rights reserved 2024.