SlideShare a Scribd company logo
1 of 80
1
SOA Interview Questions
Explain About Web service?
Web service is type of software system which is used for exchange the data and use information from
one machine to another machine through network. Generally Web services based on the standards
such as TCP/IP, HTTP, Java, HTML and XML.
Web services are pure xml based which is used for exchange information through Internet to direct
application to application interaction These systems include programs, objects,
messages or documents.
Many software applications written in various programming languages and running on various platforms
can use web services to exchange data over computer network.
You can develop Java-based web services on Solaris and that is accessible from your V.B Program
that runs on windows.
Q)-SOA Development lifecycle ?
Ans)-"From the hundred thousand foot level, you try to establish a need, you gather
requirements, you try to architect a solution and then you develop and you test and then
you deploy and manage it. At the end of life, you either modify it or retire it."
1) What is SOA?
Service Oriented Architecture (SOA) is used to develop Enterprise applications by using a
collection of services which communicates each other. Service-Oriented Architecture
(SOA) is a set of principles and methodologies for designing and developing software in
the form of interoperable services.
2) Principles of SOA?
· loose coupling
· Re-usability
· Interoperability
· Flexible
3) What is the difference between 10g and 11g?
SCA architecture was followed in 11g and not in 10g
· In 11g you can put all your project SOA components in composite.xml file and deploy as
a single deployment unit to single server, where in 10g you have to deploy each
component to the respective server (i.e. ESB to ESB server, BPEL to BPEL Server)
· Basically all the SOA components like BPEL, ESB (Called Mediator in 11g), & OWSM
are brought into one place in 11g using SCA composite concept.
· The major difference between 10g & 11g would be the app server container. 10g by
default runs onOC4J while 11g runs on Web logic Server.
· In 10g every BPEL is a separate project, but in 11g several components can make 1
project as SCA.
· In 10g consoles are separate for BPEL and ESB, but in 11g Enterprise Manager
contains all.
2
· In 10g BAM and business rules are outside SOA Suite, but in 11g they are in SOA Suite.
4) Is Oracle SOA same as Oracle Fusion Middleware?
No because SOA is one of the parts in Fusion middleware and
SOA behaves like user interface where as Fusion is big platform
5) What is SCA?
Service Component Architecture (SCA) provides a programming model for building
applications and systems based on a Service Oriented Architecture. SCA is a model that
aims to encompass a wide range of technologies for service components and for the
access methods which are used to connect them.
6) What is the SOA Suite 11g Components?
· Oracle Adapters
· Oracle Mediator
· Business Events and Events Delivery Network
· Oracle Business Rules
· Human Workflow
· Oracle Business Activity Monitoring
· Oracle Enterprise Manager
7) What is choreography? How does it differ from orchestration?
In choreography there is no business process to control the integration between the systems;
each system will directly integrate with one another in sequence where as in Orchestration
there is a business process which controls all the services (source/Target) which is part of
the integration.
8) What are the different design patterns in SOA?
· Synchronous
· Asynchronous Fire and Forget
· Asynchronous Delayed Response.
9) In how many ways can a process be deployed?
· Using JDeveloper
· Through Enterprise Manger Console
· Through Weblogic Scripts.
10) What are dspMaxThread and a recieverThread properties? Why are they important?
ReceiverThreads property specifies the maximum number of MDBs that process aysc across
all domains. Whereas the dspMaxThreads are the maximum number of MDBs that
process asy and threads that operate across a domain.
So, we need to ensure that the dspMaxThreads value is !> ReceiverThreads.
3
11) How does a async request run in the backend?
The sequence of events involved in the delivery of invoke messages is as follows:
· The client posts the message to the delivery service.
· The delivery service saves the invocation message to the invoke_message table.The
initial state of the message is 0 (undelivered).
· The delivery service schedules a dispatcher message to process the invocation
message asynchronously.
· The dispatcher message is delivered to the dispatcher through the afterCompletion()
call. Therefore, the message is not delivered if the JTA transaction fails.
· The dispatcher sends the JMS message to the queue. Places a very short JMS
message in the in-memory queue(jms/collaxa/BPELWorkerQueue) in OC4J JMS. The
small JMS message triggers the WorkerBean in the downstream step.
· This message is then picked up by a WorkerBean MDB, which requests the dispatcher
for work to execute. If the number of WorkerBean MDBs currently processing activities for
the domain is sufficient, the dispatcher module may decide not to request another MDB.
· MDB fetches the invocation message from the dispatcher.
· MDB passes the invocation message to Oracle BPEL Server, which updates the
invocation message state to 1 (delivered), creates the instance, and executes the
activities in the flow until a breakpoint activity is reached.
12) How to increase the transaction timeouts in SOA?
For the transaction timeout needs to be increased, all the below settings timeout value needs
to be changed to the expected Timeout value.
· JTA
· Engine Bean
· Delivery Bean
13) Is it possible to use MS SQL Server as dehydration store with SOA Suite ?if yes
how?
Yes it is possible.
To automatically maintain long-running asynchronous processes and their current state
information in a database while they wait for asynchronous callbacks, you use a database
as a dehydration store.Storing the process in a database preserves the process and
prevents any loss of state or reliability if a system shuts down or a network problem occurs.
This feature increases both BPEL process reliability and scalability. You can also use it to
support clustering and failover.
14) What is SOA governance? What are its functions?
Service-Oriented Architecture (SOA) governance is a concept used for activities related to
exercising control over services in an SOA Some key activities that are often mentioned
as being part of SOA governance are:
Managing the portfolio of services: This includes planning development of new services and
updating current services.Managing the service lifecycle: This is meant to ensure that
updates of services do not disturb current services to the consumers. Using policies to
restrict behavior: Consistency of services can be ensured by having the rules applied to all
4
the created services. Monitoring performance of services: The consequences of service
downtime or underperformance can be severe because of service composition. Therefore
action can be taken instantly when a problem occurs by monitoring service performance
and availability.
15) What is end point virtualization?
Generally a service bus is used for endpoint virtualization and in 11g stack; Oracle Service
Bus (OSB) is the primary service bus. In exposed proxy's message flow, it can route the
request to any of your environment's actual (physical) service on the basis of whatever
logic.
Mediator can also be used to expose the service and in mediator routing rule, it can be
routed to actual service.
16) What are DVM's and how are they helpful in SOA?
DVM-Domain Value Map are static mappings between a source and target system which can
be used in transformations. The value can be changed via SOA composer.
17) What is the difference between XREF and DVM?
b
stored in XREF_DATA table in SOA Dehydration store.
DVM- Domain Value Map is static mappings between a source and target system which can
be used in transformations.
18) What is Dehydration store?
Dehydration store is the database where the instances get stored when it gets dehydrated by
the process on the occurrence of non-idempotent activities and also stores the information
on the long running processes.
19) What is Decision service?
Oracle SOA Suite provides support for Decision components that support Oracle Business
Rules. A Decision component is a mechanism for publishing rules and rulesets as a
reusable service that can be invoked from multiple business processes.These rules can
be changed without redeploying the code.
20) Why we use BPEL and OSB?
OSB is the light-weight service bus wherever there is not much business logic involves and
there is need to just get the message routed between the systems OSB is used where as
when there is more business logic involves in the process,then BPEL will be used.
21) What is MDS?
MDS –Metadata Store
Wsdl and Schemas to be used in the process can be published to the MDS and get it used in
the code by referring the artifacts from the MDS
Advantages:
• JAR (Deployment unit) size will be reduced.
• Duplication of the artifacts can be avoided between the services.
5
22) What is a XA datasource? How it differs from a non-XA datasource?
An XA transaction involves a coordinating transaction manager, with one or more databases
(or other resources, like JMS) all involved in a single global transaction. Non-XA
transactions have no transaction coordinator, and a single resource is doing all its
transaction work itself (this is sometimes called local transactions).
23) How can we secure our web services using Oracle SOA Suite?
When accessing the services should be restricted to the group,then service should be
secured via WSM (Web service Manager).
24) How to deploy an XSL file without deployment of BPEL Process?
We will directly deploy the XSLT, options: -
• Using ANT script by file replacement in TMP folder.
• By creating a folder in BPEL PM installation folder and specifying its location in
our BPEL code with http call and replacing our xslt to that location.
25) What is HA File and FTP Adapters?
In the clustered environment,File and FTP adapters should be used as HA(High-Availability)
Inbound:It is controlled by Control Files and avoids the race between the manages servers in
reading the files where the reference of the files read by the managed servers will be
maintained in the control directory.
Outbound:It is controlled by DB Mutex table exist in the SOA dehydration store and this
avoids duplicated been written to the same file when all the managed servers in the
clusters process the same messages.
26) What is singleton Property in SOA?
In the clustered environment when the processing of the message should happen via only one
SOA managed server, then the property singleton needs to be defined at the adapter
level.
27) What is a pick activity? Can I have a pick activity with no onMessage branch?
Pick activity picks the messages from service (Source) which has multiple operations or the
BPEL process needs to receive the messages from multiple source system. Pick activity
should have at least on Message branch.
28) What is a flow activity? What is a flowN activity and how does it leverages the flow
activity?
Flow activity is used, when parallel execution of the flow is needed and to use this property
“non blocking invoke should be set as true “at the partner link level and no. of execution of
parallel flow is defined and static. Where as in Flown the no. of execution of parallel flow is
not static and it is determined during run time.
29) What do you mean by non-idempotent activity? Which all activities are
non-idempotent by default?
Activities like Pick, Wait, receive, reply and checkpoint() are called non-Idempotent activity
and during the execution of the process whenever these activities are encountered then it
gets dehydrated to the dehydration store.
6
30) How can we embed or use a java code in BPEL?
Using JAVA embedding activity in BPEL,Java code can be embedded in BPEL and can be
used.
31) How does pick activity differ from a receive activity?
Pick activity can act as a multiple recieve activity in some business scenarios.If we have two
inbound operations and both can trigger the bpel process then we will go with pick activity
as we can’t have two recieve activity with create Instance box checked.
32) How can we make a partner link dynamic?
If we have to send the request to different service which has the same wsdl then dynamic
partner link will be used and using addressing schema we can set the endpoint dynamic to
send the request to the desired service.
33) What is a nonBlockingAll property?
Non- blocking invoke is used when Parallel flow needs to be executed where new thread will
be created for each invoke a activity and which will execute simultaneously.
34) What is getPreference property? How do we set it and what advantage it provides?
Hard coding is not a good practice, so to avoid hard coding preference variable can be used
and the value of the preference variable is accessed using getPreference().The
preference variable value can be changed without re-deploying the code via em console
MBean property.
35) How can we improve the performance of an XSL file?
By avoiding use of various if statements and using choose, and by using for-each group in
place of for-each.
36) How do we handle transactions in BPEL?
Property needs to be defined to start the new transaction/to continue with the same
transactions
Property Name: Transaction and if this has value as required then the BPEL process will be
continued in the same transaction where as if the value is defined as requires new then it
will start the new transaction.
37) What are transient and durable BPEL processes?
Durable:-It is long running process and initiated through a one-way invocation and do incur
one or more dehydration points in the database during execution Ex: Asynchronous
Transient:-It is short-lived process, request-response style processes and do not incur
dehydration during their process execution Ex: Synchronous.
38) When u will go for Sync process?
Whenever the services returns the response in few seconds, it is recommended to go for
synchronous BPEL process if not the BPEL process should be Asynchronous the reason
is calling application can’t proceed further in case of synchronous process.
7
39) What is a syncFileRead operation? Is a inbound or a outbound operation? Can my
process begin with syncFileRead operation?
When file has to be read in the mid of the BPEL process, then we will use syncFileRead
Operation, means some process should initiate the file read process and it is an outbound
operation and process can’t begin with Sync File read.
40) Can we use a File Adapter to get a file without reading its content?
Yes, by selecting the Do not read file content check box in the JDeveloper wizard while
configuring the "Read operation."
41) How to increase performance increase in bpel (Db Adapter/file adapter)?
We can increase the performance by writing indexes and sequences.
(Or) Go to application server --- >Configurations ----- > Change Xml file
42) Explain error handling in BPEL and what is a error handling framework? How does
a error handling framework better than simple error handling in BPEL?
EHF –Whenever any error thrown by the BPEL process/Mediator then EHF will check whether
exist in Fault-Bindings.xml files and if so then the action in the Fault-Policy.xml file will
be taken and if the action is not found then the fault will the thrown and it will be handled in
the catch block.
43) How do we resubmit a faulted process?
Scenario A: The BPEL code uses a fault-policy and a fault is handled using the
“ora-human-intervention” activity, then the fault is marked as Recoverable and the
instance state is set to “Running”.
Scenario B: The BPEL code uses a fault-policy and a fault is caught and re-thrown using the
“ora-rethrow-fault” action, then the fault is marked as Recoverable and the instance state
is set to “Faulted”; provided the fault is a recoverable one (like URL was not available).
44) Predefined errors in BPEL?
• Custom errors
• Timed out errors
• BPM errors
• Validation Errors
45) What is a throw activity? What it is ?
Throw activity will explicitly throw the fault and this fault will get caught by the catch block and
the corresponding actions will get executed.
46) What is Web service?
Web services are application components, which are self-contained and self-describing and
provide services based on the open protocol communication (i.e. SOAP UI, HTTP over
the net).
8
47) Difference between URI and URL?
A URI is an identifier for some resource, but a URL gives you specific information as to obtain
that resource. A URI is a URL and as one commenter pointed out, it is now considered
incorrect to use URL when describing applications. Generally, if the URL describes both
the location and name of a resource, the term to use is URI. Since this is generally the
case most of us encounter every day, URI is the correct term.
48) What is Mediator?
The Mediator is in charge of interconnecting, within an SOA composite application,
components that expose different interfaces. In addition, the Mediator can perform duties
such as filtering and making routing decisions.
The composite editor in JDeveloper gives you the flexibility to define the interface now, to
choose an existing interface, or to define the interface later as you wire components to the
Mediator.
Transforming data from one representation to another is, along with routing, one of the key
functions of the Mediator.
49) Difference between ESB and Mediator?
In 10g for routing, separate router need to keep along with ESB for routing and filter
expressions.
Where as in 11g mediator contains routing rules and filter expressions itself.
50) What is the difference between concrete and abstract wsdl?
Concrete: Besides the information about how to communicate to the web service, it the
information on where the service exist. It has Bindings (Protocol the message should be
sent) and Services(has endpoint for each bindings) .
Abstract: It has information about how to communicate to the web service like types (Schema),
Message (input and output messages service accepts) ,Operat ions (operation that can be
performed on this service) and port Type.
51) What is SOAP and what are the binding protocols available?
Simple object access protocol and it is a protocol specification for the communication
happens between the web services over the network and binding protocol is HTTP.
52) What is the difference between Async and Sync activity on wsdl level?
• Async wsdl-It has only input messages for the operation and it has 2
operations one for sending the request and other for call back.
• Sync wsdl-It has 2 messages input and output messages for the wsdl
operation.
53) What are the WSDL structure?
Following are the wsdl structure
• Definitions .Types .Messages .Operation
• Port type .Bindings .Services .Ports
9
54) What is the significance of target Namespace in a wsdl?
It is the one which uniquely identifies the WSDL and when the WSDL is used it should be
identified using its Target Namespace.
55) What is structure of SOAP message?
The structure of a SOAP message: A SOAP message is encoded as an XML document,
consisting of an element, which contains an optional element, and a mandatory element.
The element, contained within the , is used for reporting errors.
The SOAP envelope-The SOAP is the root element in every SOAP message, and contains
two child elements, an optional and a mandatory.
The SOAP header-The SOAP is an optional sub-element of the SOAP envelope, and is used
to pass application-related information that is to be processed by SOAP nodes along the
message path.
The SOAP body-The SOAP is a mandatory sub-element of the SOAP envelope, which
contains information intended for the ultimate recipient of the message.
The SOAP fault-The SOAP is a sub-element of the SOAP body, which is used for reporting
errors.
56) Why do we need to have messages in WSDL, aren't operations and types enough to
describe the parameters for a web service?
Messages consist of one or more logical parts. Each part is associated with a type from some
type system using a message-typing attribute. The set of message-typing attributes is
extensible.
• The element describes the data being exchanged between the Web service
providers and consumers. Each Web Service has two messages: input and
output.
• The input describes the parameters for the Web Service and the output describes
the return data from the Web Service.
• Each message contains zero or more parameters, one for each parameter of the
Web Service's function.
• Each parameter associates with a concrete type defined in the container element.
So describing the parameters cannot performed by operations and types this is
the main need of Messages.
57) What is a inline schema?
Schemas can be included inside of XML file is called Inline Schemas.
58) What is the difference between xsd:import and xsd:include?
The fundamental difference between include and import is that you must use import to refer to
declarations or definitions that are in a different target namespace and you must use
include to refer to declarations or definitions that are (or will be) in the same target
namespace.
10
59) What is BAM?
Business Activity Monitoring is a tool that is useful in monitoring business services and
processes. It actively collects data, applies rules and reports information to users. When
something goes wrong in business processes, BAM can be configured to take corrective
measures such as emailing administrators/support team.
60) How to send the data to BAM from SOA?
The Oracle BAM Adapter is a Java Connector Architecture (JCA)-compliant adapter which
can be used from a Java EE client to send data and events to the Oracle BAM Server.
Oracle BAM Adapter is configured in Oracle Weblogic Server Administration Console to
provide any of these connection pools. Oracle BAM Adapter provides three mechanisms
by which you can send data to Oracle BAM Active Data Cache from an SOA composite
application.
61) What are the ways to publish the data to BAM?
There are two ways to publish the data to BAM
• BAM Adapter.
• BAM Sensor activity level.
62) What are the roles in BAM?
• Architect
• Administrator
• Active Viewer
• Active Studio
63) What is forward delay in JMS Queue?
In the clustered environment where JMS queues are used, when for the queues in any one of
the Managed server doesn’t have the consumer, once messages reac hes the forward
delay time it gets moved to the other managed server where consumer is present.
64) What is redelivery limit in JMS Queue?
When the message gets failed to get processed ,then it will be re-tried will the redelivery limit
exhausts and once after the redelivery limit the message can b e either moved to the error
Queue are it can be discarded.
65) What is timetodeliver in JMS Queue?
When Messages enqueued to the JMS queue, it will be immediately consumed by the JMS
Subscribers, if any delay needs to be induced for the message consuming by the
Subscribers then timetodelivery needs to set. The JMS message will not be subscribed
until timetodelivery exhausts.
66) Difference between JMS Queues and Topics?
Queue-Message will be subscribed by one subscriber.
Topic-Message will be subscribed by more than one subscriber.
http://interviewquestionsandanswers.biz/interview-questions-list-and-answers/
1.Diffrence b/w Assign and Transform activity is BPEL?
Ans. Asssign is used for simple tasks like initializing the varaibles or for transforming small
payloads
Transform is used for complex and huge payload transformations.
11
Also,When you use assign the variables reside in the memory...where as transformations
invole the use of XSL engine.
Assign is to copy some values in a variable to other variable.(might be copy,
insert-after,insert-before,append...etc)
Transform is to change the styles.
But in general, we use the transformation to change the data from one format to anot her
format.(I mean one structure to another structure)
Whtat is SOAP?
SOAP is a simple and open standard XML-based protocol for exchanging information
between computers.
SOAP is an XML-based protocol for exchanging information between computers.
SOAP is XML. That is, SOAP is an application of the XML specification.
All statements are TRUE for SOAP
SOAP is acronym for Simple Object Access Protocol
SOAP is a communication protocol
SOAP is designed to communicate via Internet
SOAP can extend HTTP for XML messaging
SOAP provides data transport for Web services
SOAP can exchange complete documents or call a remote procedure
SOAP can be used for broadcasting a message
SOAP is platform and language independent
SOAP is the XML way of defining what information gets sent and how
Although SOAP can be used in a variety of messaging systems and can be delivered
via a variety of transport protocols,
the initial focus of SOAP is remote procedure calls transported via HTTP.
SOAP enables client applications to easily connec t to remote services and invoke
remote methods.
Other frameworks, including CORBA, DCOM, and Java RMI, provide similar
functionality to SOAP,
but SOAP messages are written entirely in XML and are therefore uniquely platformand
language-independent.
-----------------------------------------------------------------------------
Links for Diff Concepts
Throttling :
http://soawork.blogspot.in/2013/01/throttling-in-osb.html
---------
Oracle SOA Interview Questions (Mediator) Part-3
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
12
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.
13
Question: Types of Static Routing rules?
Answer: Sequential & Parallel.
Question:-Whatall activitiesyouhave usedwhiledeveloping yourBPELcomponent.
Ans:
Activity
Name
Details
Assign Thisactivityprovidesamethodfordata manipulation,suchascopyingthe
contentsof one variable toanother.Copyoperationsenableyoutotransfer
informationbetweenvariables,expressions, endpoints,andotherelements.
Compensate Use to compensate ascope of activitiesthathassuccessfullycompleted.
Compensationoccurswhenaprocesscannotcomplete several operationsafter
completingothers.The processmustreturnandundothe previouslycompleted
operations
CheckPoint Enablesyouto explicitlyspecifyadehydrationpoint,usedforforced
dehydration.
Empty
Activity
Usedto specifyemptyaction(i.e noexecution),canbe usedasplace holders.
FlowActivity Thisactivityenablesyoutospecifyone ormore activitiestobe performed
concurrently(parallel flow)
FlowN Thisactivityenablesyoutocreate multipleparallel flowsequal tothe value of N,
whichisdefinedatruntime basedonthe dataavailable andlogicwithinthe
process
Invoke Usedto invoke anoperationinthe partnerlinkservice.
PickActivity Thisactivitywaitsforthe occurrence of one eventina setof eventsand
performsthe activityassociatedwiththatevent.The pickactivityworksas
receive activityanditcan be usedto receive messagesfromdifferentoperations.
You can alsospecify the onAlarambranchto timeoutwhilewaitingtoreceive a
message.
Receive Thisactivityusedtoreceive amessage fromthe partnerlink.
Reply Thisactivityallowsthe processtosenda message inreplytoa message thatwas
receivedthroughareceive activity.
14
Rethrow Thisactivityenablesyoutorethrow a faultoriginallycapturedbythe
immediatelyenclosingfaulthandler.
Scope Thisactivityconsistsof a collectionof nestedactivitiesthatcanhave theirown
local variables,faulthandlers,compensationhandlers,andsoon.A scope
activityisanalogoustoa { } blockin a programminglanguage
Switch Usedto performconditional processing.
Terminate A terminate activityenablesyoutoendthe tasksof an activity(forexample,the
faulthandlingtasksina catch branch)
Throw Thisactivitygeneratesafaultfrominside the businessprocessandthrowsthe
fault.
Transform Thisactivityenablesyoutocreate a transformationthatmapssource elements
to targetelements.Transformactivitiesgeneratedthe XSLTfile.
Wait Thisactivityallowsaprocessto specifyadelayfora certainperiod
While Thisactivitysupportsrepeatedperformance of aspecifiediterativeactivity
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
Question: What is WSDL ?
Answer : WSDL stands for Web Services Description Language
WSDL is a document written in XML. The document describes a Web service. It
specifies the location of the service and the operations (or methods) the
service exposes.
Question: Explain elements/tags of WSDL ?
Answer :
types
A container for abstract type definitions defined using XML Schema
message
A definition of an abstract message that may consist of multiple parts, each part
may be of a different type
portType
An abstract set of operations supported by one or more endpoints (commonly
known as an interface); operations are defined by an exchange of messages
binding
A concrete protocol and data format specification for a particular portType
service
15
A collection of related endpoints, where an endpoint is defined as a combination of
a binding and an address (URI)
Question: Difference between Abstract and Concrete WSDL ?
Answer : Abstract WSDL contains only messages and operations. Abstract WSDL
is
used by SOAP Server.
Where as concrete WSDL contains messages, operations and transport
specific information (JMS or Http). This is used by SOAP client.
Question : What is SOAP ?
Answer : SOAP is a simple XML-based protocol to let applications exchange
information over HTTP.
Or more simply: SOAP is a protocol for accessing a Web Service.
Question : What is XML Schema ?
Answer : An XML Schema describes the structure of an XML document.
Question : Difference between Include and Import in context to XML schema ?
Answer : The fundamental difference between include and import is that you
must use import to refer to declarations or definitions that are in a different target
namespace and you must use include to refer to declarations or definitions that
are (or will be) in the same target namespace.
Question : What is targetNamespace's function?
Answer :
<schema
xmlns="http://www.w3.org/2001/SchemaXML targetNamespace="http:/
/www.example.com/name" xmlns:target="http://www.example.com/nam
e">
The targetNamespace declares a namespace for other xml and xsd documents to
refer to this schema. The target prefix in this case refers to the same namespace
and you
would use it within this schema definition to reference other elements, attributes,
types, etc. also defined in this same schema definition.
Question : How to refer another XSL from main XSL file ?
Answer : The <xsl:import> element is a top-level element that is used to import
the contents of one style sheet into another.
Note: This element must appear as the first child node of <xsl:stylesheet> or
<xsl:transform>.
Syntax: <xsl:import href="URI"/>
Question: Why we use Call-template inside XSL ?
Answer : Call-template works similar to the apply-template element in XSLT. Both
attach a template to specific XML data. This provides formatting instructions for
the
XML. The main difference between the two processes is the call function only
works with a named template. You must establish a 'name' attribute for the
template in
order to call it up to format a document.
16
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
< xsl:call-template name="myTemplate">
< !-- Content: xsl -->
< /xsl:call-template>
< stylesheet>
Question: Difference between XA & Non-XA transaction ?
Answer:
Non-XA (Local Transaction): It involves only one resource. When you use
Non-XA transaction then you can’t involve multiple resources (different databases,
Queues,
application servers etc), you can rollback or commit transaction for only one
resource. There is not transaction manager for this transaction as we are dealing
with
only one resource at a time.
XA (Global Transaction): It involves more than one resource (different databases,
queues, application servers) all participate in one transaction. It uses two-phase
commit to ensure that all resources either all commit or rollback any particular
transaction. When you have scenario like you need to connect to two different
databases, JMS Queue and application server, in this case you will use XA
transaction that means all resource participate in one transaction only.
Question: What is inline schema ?
Answer: Inline schemas are XML schema definitions included inside XML instance
documents. Like external schema documents, inline schemas can be used to
validate that
the instance matches the schema constraints.
Question: what is the use of Pick Activity?
Answer: This activity waits for the occurrence of one event in a set of events and
performs the activity associated with that event. The occurrence of the events is
often mutually exclusive (the process either receives an acceptance or rejection
message, but not both). If multiple events occur, the selection of the activity to
perform depends on which event occurred first. If the events occur nearly
simultaneously, there is a race and the choice of activity to be performed is
dependent on
both timing and implementation.
Question: Design patterns in SOA ?
Question: Difference between Synchronous Process and Asynchronous Process ?
Question: Use of Config Plans?
1. Is Oracle SOA same as Oracle Fusion Middleware
A) No because Soa is one of the part in Fusion middleware and soa behaves
like user interface where as Fusion is big platform
17
2. What is SOA Governance
A) It means that soa is an service oriented Architecture and for building business
applications as a set of loosely coupling components integrated with business
services. Soa is an open standard and technology based that means open
standard is xml based protocol including wsdl and web service based
Architecture.SOA Governance has some activities , components and services…etc
B) SOA REGISTRY,SOA POLICY,SOA TESTING.
3. How to increase performance increase in bpel (DB Adapter/file adapter)?
A) For getting better performance we use performance tuning.Performance tuning is
based on BPEL Levels ,server level and application level. if we put check point in the bpel process
level then the performance of application will decrease or the process of the speed
reduces.(check point means it stops the next incoming messages until the timer gets expired.)
4. Predefined errors in BPEL?
A) The Predefined errors are selection failure , conflicting receive, conflicting request , join
failure , forced termination , invalid reply , binding fault , remote fault.
5. Is it possible to use MS SQL Server as dehydration store with SOA Suite?if yes how?
A)
6. What are the various elements in WSDL
A) < definitions > <types> <message>
<port types>
<bindings>
<services>
Abstract: Invoke the web service
Concreate: development & design phase endpoint uri.
7. What is structure of SOAP message
A) Soap can carry the data from source to destination and it is a simple xml based protocol
to exchange the information b/w application over http
SOAP message is an ordinary xml document containing
i) An envelope element identifies the xml document as a soap message
ii) A header element contains header information
iii) A body element contains call and response information
iv) A fault element contains error and status information
v) The element contains actual soap message intended for the ultimate end point of
message
8. Can I call an asynchronous process from a synchronous. Are their any limitations
(how much time is permissible for async process to return)?
A) Yes we can call Async to sync and it is one of the good design for bpel and this process is
called as asynchronous invocation process and no time limitations are permissible
9. How to ensure that parallel flows implemented through Flow activity are 'really'
parallel?
A)We have to check whether the non blocking invoke is set to be true or false.
Non blocking invoke property is available in while using invoke-> partner
link->nonblockingproperty_>set the value.
18
10. How to develop a web service bottom up?
A)
11. How to return a fault from BPEL process. Do I need to change the WSDL. Do I need
to do it manually?
A) Using throw activity we can return a fault from bpel processes and we need to create
a fault element in XSD and we need to create fault message of our xsd element and need
to change in bpel level
12. How to add a specific catch handler for binding fault
A) we will use catch handler block and we will add this catch handler at scope level
13. How to add a specific catch handler for timeout
A) for mentioning the time out ,we will use scope activity and will add this catch
handler at scope level
14. How to use sensors
A) we can send or apply the sensors to BAM , JMS Queue and Topic .Sensors are mainly
used in BAM to know the description or inner details of any object.there are 3
different types
B) Activities,Variables and elements.
C) Activity sensor is used to monitor the execution of activity with in a bpel process
using activity sensors.We can find execution time of invoke activity or how much
time it will take to complete an activity.
D) Variable Sensor:It is used to monitor the runtime values of variables in a bpel process
E) Fault Sensor:used to monitor the Bpel Faults.
15. How to use BPEL properties to externalize constants in BPEL processes?
A)
16. Is it possible to set a timeout when calling a synchronous process?
A) Yes it is possible by using scope block we will set a timeout when calling a synchronous
process
17. Is it possible to timeout a asynchronous process
A) Yes it is possible by using scope block we will set a timeout when calling a
Asynchronous process
18. What are the various interaction patterns that can be implemented
A) sync and Async
Oneway
based on wsdl
based on events
empty
async timeout
sync timeout.
19. Is it possible to escalate a notification during human task?
A)Yes we can escalate a notification .In human Task we have deadlines ,in that we can
escalate a notification to whom ever you want.
20. What are the various options of calling Java code from BPEL processes?
A)we use java embedded activity option to call java c ode from BPEL.We have java class
methodology to call java class or java code from bpel.
19
21. What are the various options available for scheduling a BPEL process?
A)We have some unit testing (deployment)process scheduling bpel.We have some
SCA(components,activities and some templates)to schedule our bpel process.
22. How to call BPEL from java?
A) If you are suppose to call bpel from java if our bpel is webservice (has to be in
running mode)
23. How to call BPEL from PLSQL
A) if a service is web service we can call any bpel to plsql or vice versa.
24. How to call BPEL from Excel
A) By using File adapters we read any kind of files.
25. How to use business rules in BPEL process?
A) Using business rules component from service component palette. In business rules
26. How to delete a file on a FTP server through BPEL
A ) Should specify the JNDI name in FTP server .The deployment descriptor for deployed
instance of the ftp adapter must associate with jndi name with a set of configuration
properties needed by the ftp adapter to access the ftp server at run time.In this you have
to check delete file option and thus we can delete file from FTP server through bpel.
27. How to use In-memory, File based and AQ-based JMS
A)
28. How to use Apps adapter to call a concurrent program
A)
29. How to use content based and header based routing?
A) Content Based Routing:
A routing service determines how the message gets from one point to another with in the
oracle.as defined the routing rules against XML msgs.
As we can define rules to route msgs based on the msg content.So this is known as content
based routing.
When we configure content rules we hve to specify whether a filter expression is applied.It
specifies that the contents of msg be analysed before any service invoked.
Header Based Routing:
30. How to change the filename when writing a file through adapter
A)
31. What is DVM
A)Domain Value Map
Applications that you want to integrate using Oracle BPEL or Oracle ESB are likely use
different values to represent the same information. For example, one application might
represent a state with the long name (CaliforniA) while another application may represent
the state with an abbreviation (CA). A domain-value map enables you to associate values
from one application with values from another.
33. How to do error handling in ESB. Is error handling different across synchronous and
asynchronous ESBs?
A)Error handling is possible with ESb but it is difficult in ESB to handle the errors or bugs.
20
34. What happens if an adapter rejects a file or a message when
reading it. How to retrieve this message?
A)if an adapter rejects a file or a message then it will automatically displayed in rejected
messages folder.
35. What is AIA. Why is it such a cool idea...why is it such a hot skill!?
A)Application integration Architecture
36. How to set log levels for performing detailed debugging?
A) By selecting Logging tab in advance options.
37. How to see logs in enterprise manager?
A)
38. What is meant by logfile rotation?
A)
40. If a file having huge data (more than 10 mb) how to send this data?
A) If a file has huge data ,the data should be split into number of messages and send.
41. How to set timeout error?
A)
42. What is the difference between database adapter and oracle apps
adapter?
A)
43. What is diff between BPEL adapters and ESB adapters?
A)
44. Diff between BPEL and ESB
A) BPEL:
Bpel is heavy weight product
Bpel installation wizard takes 500mb
If process centric bpel is right choice
Very good for orchestration
Its performance is slower
Bpel has extra features like Work flow,Email notification.
Every component in sca can be deployed in Single console
ESB:
Light weight product
It takes 270 mb space
Performance speed is faster
Only routing transformations are possible,
Data centric esb is right choice.
45. Benefits of ESB?
A) ESB support multibinding protocol includes http,soap,jms server,jca & java for generating
a reliable msgs for delivering Sync and async.
ESB moves the data among multiple end points both with in and out side the enterprises.
It can transform heavy data also.
Connectivity.
Document transformations
Content based and Header based routing
21
46. Explain diff types of bindings?
A) Soap bindings, http bindings and jms bindings
47. Diff between physical path and logical path in file adapter? and
how to set in bpel.xml?
A) The Diff between physical path and logical path in file adapter is that in physical path
the deployment and development is done In the same environment and in logical path they
both are done in different environments.
48. what are the activities you are used in syn process and asyn process?
A) for sync process we will use receive and reply, assign or transform
for Async process we will use receive and callback, assign or transform
49. Explain about pick activity where we use this?
A)It allows you to block and wait for suitable messages to arrive or for a timeout to go out.
When one of the triggers occur the associate activity is performed and a pick completes.
Pick contains On Message and On Alarm
When we call a third party async service we use pick
50. Explain XSLT,XML,XSD,WSDL,XQUERY ?
A) XSLT: Extensible markup Language transformations
In this XSLT we convert one extension to another extension.
XML: Extensible markup language
XML is mainly used for storing the data but not showing the data.
XML is self descriptive language
In XML own tags can be defined.
XML can be written in 2 types
DTD & XSD
DTD:Data type definition
This describes the structure of the XML document
XSD:XML Schema defintion
This XSD (Schema) is in turn divided in to 2 types.
Valid XML
Well Formed XML
Valid XML (DTD+well formed XML)
Well formed XML (Valid syntax)
XSD: Extensible schema definition
XSD:XML Schema defintion
This XSD (Schema) is in turn divided in to 2 types.
Valid XML
Well Formed XML
Valid XML (DTD+well formed XML)
Well formed XML (Valid syntax)
WSDL: Web service description language.
There are two types of wsdl:
Abstract wsdl:which invokes a webservice
Concreate wsdl: where design and deployment is done.
WSDl elements:
22
Types
Messages
Porttypes
Bindings
Hostname
Partner links
XQUERY:Xquery is otherwiseknown as Xpath which is defined by /
51. how to define the rules in bpel?
A: we will define the rules in rules repository and this repository will be available in
business rules.
52. How to identify weather the webservice id syn or asyn?
A)
53. Diff between bpel webservice and other webservices?
A)
54. How to generate SOAP bindings in BPEL?
A) After deploying our application would be in server then soap bindings will be
generated in bpel
55. Explain about MCF Properties?
A)
57. What are differences between synchronous and asynchronous process?
A) syn process will give immediate output and show in the display page where as Asyn
also will give output but not show in the display page.
58. Why we will use the partition?
A) the partition will be used to reduce the burden for the server and easy to identify
the deployed application which we deployed into server
59. How many types of variables are there?
A)Simple variable(pre defined variable)
Message
Element
60. Types of WSDL?
A) Concrete wsdl and Abstract wsdl
Concrete wsdl is for invoke the web service
Abstract wsdl is for development and design pattern
61. What is end point URI?
A) an end point URI means uniform resource identifier and it refers that
62. What is domain?
A)
63. How can we write web services our own?(how to create dynamic web
services)
A)
64. What is interface? Types of interface?
A)
65. Why we use metadata schema?
A)
23
66. What is one-way & two-way process?
A)
67. What is deployment plan?
A)
68. What are the configuration files in adapters?
A)
69. What is use of OESB/ESB/Mediator/OSB/ALSB?
A)
70. What are the operations in WSDL?
A)
71. How can do the customization in adapters? Are there any changes
in XML files?
A)
72. What is work list application?
A)
73. What are the dehydration storage tables?
A)
74. What is automated roll-back & manual Roll-back?
A)If we use Throw activity explicitily then automatically it rollbacks.
B)<throw faultname=”rollback”>
C)For manual rollback invoke a partner link that rollbacks a JTA transaction.Suppose in a DB
adater ,an error thrown from the database then it causes the JTA Transaction to roll back.
75. What is inline schema?
A)
76. What is success reply and failure reply?
A)
77. What is difference between imports & include?
A)Import : if we have different name spaces
Include: if we have same namespaces.
78. What is difference between services & references?
A)Services are which are self dependent.service is an entry point into the composite from
external world.
References are those which are dependent on other services.References are those which are
given to the external world.
79. What of process of choreography?
A)
80. Which file could deploy in SOA 10g?
A) jar files
81. Can we use Jdeveloper in OSB?
Ans:- No if you want to develop that feature you need to deploy in eclipse
82. What RMI & RPC?
A) Remote Method invocation
B) Remote Procedural Call
83. When we use correlation for synchronous & asynchronous services?
24
A) If you get some request, scope will provide the link for same earlier request that is called
correlation
84. What is XSL & XSLT, Differ those?
A)extensiable schema language and extensiable schema language transformation.
XSL is simply a language where as xslt is which converts from one format to another.
85. What id ODI?
A) oracle data integration
86. What is idempotent?
A)It is one of the activity which is used for retrieving the saved one.Apart from breakpoint
activities all are idempotent activities.
(Assign,invoke)
87. What is WSDL which one we give to client?
A)concrete wsdl
-
Q)What is non idempotent activity?
It is an activity which can be happened only once.Break point activities are NON-Idempotent
Activities.
88. What is JTA?
A)
89. After consume the data from queue or topic is there any packets?
A)
90. Can we use two pick/ receive activities or one pick & receive?
A) No only one pick and one receive activity can be used
91. Why we call ESB in 10g as mediator in 11g?
A) the esb functionality has been moved to mediator in11g.
92. Can we use customize XSLT? If yes how?
A) yes .why bcz we will use the existing mapper file to customize
93. Is it compilation done by ant-script? How?
A) Yes we will set JAVA path in environment variables for deploying the application through
ANT
94. What are transaction boundaries?
A)If we create transaction with in the transaction then it creates some boundaries and such
boundaries are known as transaction boundaries.
Oracle Bpel server always executes request with in a JTA transaction.If JTA transaction
already present with the context then the BPEL process uses this transaction .Otherwise it
will create a new JTA transaction.
A client initiate the JTA transaction if Transaction=participation property is specified in
the message header.
The bpel transaction analyst itself incoming or parent JTA transaction. If the property is not
set a new transaction is created ,i.e the transaction is default.
Eg : to invoke synchronous
95. What is difference between file adapter & FTP Adapter?
A) File adapter contains read &write along with synchronous read
B) Ftp contains get file & put file, List of files.
25
96. What is OAGIS?(Open applications group integration specification)
A)
97. Describe about the SOAP?
A)Soap is a simple xml based protocol to exchange the information b/w application over http
98. From we can retrieve the schema?
A)Bam schema
B)MDS schema
C)User interface schema
D)Soa infrastructure schema
Mainly schema is retrieved from database.
99. What is cube_instance?
A)
100. What is cluster based deployment?
A)
101. Can we use throw called without catch & catch all?
A) yes we can use
102. What is path of deployment file?
A)
103. In which folder .jar files created?
A) deploy folder
104. What is file debatching?
When a file contains multiple messages we can select publish messages in specific number
of batches and is known as DE-BATCHING.During de batching the file reads the messages
from where it left the previous where it left off in order to avoid conflicts
105. What is chunk file?
106. Can we give time for synchronous & asynchronous? By
which activity?
A)wait
107. How much size can file accept through file adapter? If
it extends what happened?
108. How can find particular fault message in catch all
activity?
A)By using catch activity.
109. How can we associate faultpolicy.xml with fault
binding.xml?
110. What is the best process A) sync-Async
111. B) Asyncsync.
A) in some cases syn-Asyn and some cases asnc-syn
112. What are the different design patterns in SOA?
113. What are different types of installations in SOA Suite
10g & 11g?
A) custom and typical(Basic and advanced)
114. What is the significance of target namespace in a WSDL?
A) it is there to avoid the naming specifications
26
115. What are different message exchange patterns in BPEL?
A) send Asyn
ii) fire and forget
iii) one way invocation
116. Flow activity is sequential or parallel?
Flow activity is sequential when a property called NONBLOCKINGINVOKEPROPERTY is false.If
it is set to be TRUE then it works as a parallel.
117. What is “nonblockinginvokeall” property?
118. What is DSP max thread & receiver thread properties? Why
they are important?
119. What is error handling framework?
120. What is FlowN activity & how does it beverages the flow
activity?
A) If you come to know the number of branches to be executed in development time
then it is FLOW.
If you don’t know the number of branches are to be assigned before the design then values
canbe assigned at runtime then it is FLOW-N
121. How do we handle transactions in BPEL?
A) parallelly
122. What are transient and durable BPEL?
A)Transient :The process that does not have any breakpoints(non idempotent activities and
idempotent activities)
Durable: The process that does have one or more breakpoints(non idempotent activities
and idempotent activities)
Note: Invoke activity is defaultly a idempotent but manually we can set as non idempotent.
123. What is XA data source & how it differs from non-XA data
source?
A) XA) Transactional
Non XA) Non Transactional
XA) Transactional----XA datasource is the property value of JNDI datasource in JDBC.
124. What are MFC properties?
125. What all operations can be performed by file adapter?
A) read, write, list
126. What is synchronous file read operation? Is it in bound
or out Bound operation?
A) inbound operation
127. What all errors handled by BPEL process?
A) system errors
128. Why do we need JMS queue?
129. What is the benefit of JMS queue using over AQ queue?
A) In JMS we store the messages in Queue
B)
130. What is get preference property? &how do we set it and
what advantage it provides?
27
131. How can we make partner link dynamically?
132. How do we resubmit faulted process?
A) Through the recovery option.Once fault occurs we have recovery option to recover and
maintain the flow
133. Types of deployment?
A) Hot deployment and cold deployment
134. How do we embed or use of JAVA code in BPEL?
135. When do we use ESB over BPEL?
A) When large amount of data is transformed we use ESB.
B) Dynamic Transformations can be done by ESB than BPEL
C) ESB helps to increase flexibility ,reusability and over all responsibilities.
136. What is out of box error handling in ESB?
137. How can we get instance ID in ESB?
A) In ESB console we can see instance ID
B) When our application is deployed in the ESB console then as instance Is created.
138. How can we make routing in ESB dynamic?
ESB provides standard based data mapper to map the different applications data models.
In Esb routing service contains transformations , filtering options. Using this ESB services we
can create routings dynamically. In Esb High transformations & mappings are very high.ESB
over view.
139. What is domain value mapping?
Applications that you want to integrate using Oracle BPEL or Oracle ESB are likely use
different values to represent the same information. For example, one application might
represent a state with the long name (CaliforniA) while another application may represent
the state with an abbreviation (CA). A domain-value map enables you to associate values
from one application with values from another.
140. Explain about the buckets?
A) Bucket set having range of values
141. How to create dictionary?
Dictionary is having Rulesets & Bucket sets.
In B-Rules we need to configure facts, rules, and bucket set. All these collectively will
be saved in dictionary. And dictionary would be created.
Dictionary is also known as rules repository.In theses repository we will create b-rules &
conditions.
142. Explain about JNDI connections?
JNDI means Java Naming Directory Interface .While configuring adapters in the run time we
give jndi name in db or jms. Jndi binds a object with a name. It looks for that objects through
particular name Based on that object jndi will works.
143. How to process the variable from one instance to another
instance?
144. What is signal & receive signal?
A) to identify the unique service number
28
145. Why do we need to have messages in WSDL, aren't operations and types
enough to describe the parameters for a web service?
A) yes we need the messages in wsdl because in wsdl we have input and output messages
and that msg would refer to bpel.As operations and types are alone not enough.Actually the
msgs are linked with XSD elements. So msgs are mandatory in wsdl.
146.Routings are of 2 types?
Content based routing
Header Based routing
147.what are dehydration boundaries?
Invoke
Pick(on branch)
Receive
Wait
Checkpoint
147.What are the break point activities?
A)wait ,pick, receive
It is a activity in which oracle bpel server must wait for next incoming messages to wait until
timer gets expired.
148.What are transaction activities?
Compensate
Receive
Reply
Invoke
149.How to rollback in bpel apart from using compensate handler?
We need to Set property
Throwfaultname=Rollback
150)Types of adapters?
Technology adapters like file,jms,db adapters
Application adapters like sap,Peoplesoft,Siebel CRM.
151)diff b/w Soa and other services?
Soa is technology independent,loosely coupled,Reusabulity.
Other services :It depends upon their functionality.
152)Installation types?
2 types;
Basic type:Embedded DB that acts as a dehydration
Advanced type: which provide an external db
153)What is re hydration?
Whenever any message or timer expires then bpel server locates and loads the particular
bpel process instances and loaded into memory.This process is known as rehydration.
29
Oracle Service Bus
Oracle Service Bus Interview Questions
*During the OSB session we discussed about interview related Questions. These
are a few Questions which can be asked during interview related to OSB
Q) What is Proxy Service ?
A) 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.
Q) What is Business Service?
A) It connects to the EIS layer. Business services are Oracle Service Bus definitions
of the enterprise services that exchange messages during business processes.
Q) What is the EAI architecture OSB follows ?
A) OSB follows the BUS architecture in EAI.
Q) What does it mean by VETRO concept?
A) VETRO stands for
V – Virtualisation
E – Enrichment
T – Transform
R – Route
O – Operate
Q) Can we expose any Business Service to external clients or subscribers?
A) No, we can not expose Business Services to external clients or subscribers. We
need Proxy Services to expose to external world.
Q) Can we have Proxy Services without Business Services?
A) Yes we can have Proxy Services without Business Services , but that will be
just a dummy service. EIS layer can not be connected using that Proxy Service.
Q) What is the message flow in Proxy Services ?
A) 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, Actions etc.
Q) What are stages ?
A) Stages are OSB Message Flow component to contain the actions.
Q) How we can connect to Database from OSB?
A) We need to first create one JCA based DB adapter to connect to the database.
Then we need to create that JCA based Business Service. We need to call that
Business Service to perform database operations.
Q) Is there any other way to connect to Database without using JCA adapters?
A) Yes we can use XQuery execute-sql() function to connect to database. But it is
better to use JCA adapters.
Q) How we can achieve parallel processing in OSB?
A) SPLIT JOINS are meant for parallel processing. So we need to implement Split
– Join resources to achieve parallel processing.
Q) What are the transformation resources available in OSB?
A) In OSB we can use XQuery or XSLT for transforming messages.
Q) How to poll file in OSB?
A) The proxy service should be using file transport, and also define the required
components like File Mask,Polling Interval, Read Limit, Post Read Action etc.
Q) Can we achieve REST implementation in OSB?
A) Yes we can achieve REST service implementation in OSB. It can be
implemented using Branch Nodes.
Q) What is Pipeline Error Handler?
30
A) Pipeline Error Handlers are used to handle the errors occurred in Request or
Response Pipleline.
Q) How can you end a Proxy flow without using if then else logic ?
A) You have to use Reply (with Success)action to end the Proxy Flow where you
want.
Q) For a JMS Queue Subscriber Proxy Service how can you ensure that the JMS
Message is retried if an error occurs during processing?
A) One XA Connection Factory should be created to access that JMS queue and
that Connection Factory should be used in the URL.
Q)How can you jump control from one stage to next stage without using if then
else logic?
A) You have to use Skip action at the end of the stage.
16. In a distributed OSB system, if you have been asked to create 2 separate
queues residing on 2 MS, how you will implement this?
Answer is : UDQ (User Distributed Queue) is a concept to implement on Cluster
environment.
17. What are the other standard ways of doing message transformation apart from
XQuery/XSLT?
Ans: using Assing activity in SOA11g
5. where a source system puts a flat file into a location and the data has to be
inserted to RDBMS. Basically to design a solution for this requirement with OSB
and without OSB (using SOA suite components).
solution :
@ SOA:at service section side using file adapter with get operation we will pick
file from our local system ,Route this file threw Mediator to Db Adapter with
Insert operation.
@ OSB:A) Proxy service:Using FILE Protocol we will pick file from local system
b)We need to develope a composite of insert db Adapter at Jdev level &
import those .xsd,.wsdl,.jca files into eclipse environment. then we generate
Business service in .jca file.
It may be helpful.
OSB 11g - Throttling
Throttling is termed as " regulate the flow". Oracle Service Bus has throttling feature and
by using that feature we can control number of requests sent to target service.
But why we need OSB throttling ?
Every system has its own capacity means it can process only certain number of message
at one time, if we try to send messages beyond its capacity then that system's
performance can degrade or in worst case it can crash. So to avoid all this we can use
OSB throttling feature to send limited messages to target system.
Oracle OSB Interview Questions and Answers:-
Configuring Proxy Services and Business Services:-
Oracle Service Bus proxy services and business services provide the means for
managing services, transforming messages, and routing messages through the
enterprise.
You can create and configure proxy services and business services using either the
run-time environment (Oracle Service Bus Console) or the development environment
31
(Eclipse with Oracle Service Bus plug-ins). You can base proxy services or business
services on existing Web Services Description Language (WSDL) resources, including
those imported from a UDDI registry such as the Oracle Service Registry, and then
further configure them in the console or the plug-in.
1. What is a Proxy Service?
Oracle Service Bus proxy services are definitions of intermediary Web services that
Oracle Service Bus implements and hosts locally. Oracle Service Bus uses proxy
services to route messages between business services (such as enterprise Web
services and databases) and service clients (such as presentation applications or
other business services).
A proxy service configuration includes its interface, transport settings, security
settings, and a message flow definition. The message flow definition defines the logic
that determines how messages are handled as they flow through the proxy service. If
a proxy service is based on a WSDL document, the configuration also includes a
WSDL port or a WSDL binding.
What is Oracle Service Bus Business Services?
Oracle Service Bus business services are definitions of enterprise Web services to
which Oracle Service Bus is a client. Those external Web services are implemented in
and hosted by external systems, so Oracle Service Bus must know what to invoke,
how to invoke it, and what to expect as a result. Oracle Service Bus business services
model those interfaces so that Oracle Service Bus can invoke the external services.
A business service configuration includes its interface, transport settings, and
security settings. (It does not include a message flow definition.) If the business
service is based on a WSDL, the configuration also includes a WSDL port or a WSDL
binding.
2. What are the different types of Pipelines?
Request and Response Pipeline.
What is a Pipeline?
Pipelines are one-way processing paths that include no branching. A pipeline is a
named sequence of stages containing actions, representing a non-branching oneway
processing path. It is used to specify the message flow for service requests and
responses. A stage is a user-configured processing step. Messages fed into the
pipelines are accompanied by a set of message context variables that contain the
message contents. They can be accessed or modified by actions in the pipeline
stages.
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.
What is a Message Flow?
32
In Oracle Service Bus, a message flow is the implementation of a proxy service. You
configure the 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.
3. What is a Publish Table?
Use a publish table action to publish a message to Zero or more statically specified
services.
4. What is a Publish Node?
We Use a publish action to identify a statically specified target service for a message
and to configure how the message is packaged and sent to that service.
WSDL Overview:-
A WSDL document describes a service, its location, its operations, and the way in
which clients can communicate with it. This section provides a very brief introduction
to WSDL, to provide context for discussing Oracle Service Bus features.
Table 35-1 summarizes the main elements used to define WSDL services.
Table 35-1 High-level WSDL Elements
Element Description
<types> Type definitions for message content.
<message> Abstract definition of the data being exchanged. A message consists of parts, which
describe the logical, abstract content of the message.
<portType> Abstract collection of operations supported by the service.
<operation> Abstract description of an action supported by the service.
<binding> Concrete protocol and data format specification for a port type.
<port> A single endpoint, consisting of a network address and a binding.
<service> Collection of related ports, or endpoints.
WSDL specifies SOAP, HTTP, MIME, and Oracle Service Bus-specific binding
extensions, which extend the WSDL binding mechanism to support protocol-specific
or message format-specific features.
Types:-
The <types> element is a container for data type definitions. It uses a type system,
such as XML Schema (XSD), to define the vocabulary of messages handled by this
service. For example, a service that provides stock quotes might define an XML
vocabulary, with the terms TradePriceRequest and TradePrice, as shown in Example
35-1.
Example 35-1 WSDL Types Example
<types>
<schema targetNamespace="http://example.com/stockquote.xsd"
xmlns="http://www.w3.org/2001/XMLSchema">
<element name="TradePriceRequest">
<complexType>
<all>
<element name="tickerSymbol" type="string"/>
33
</all>
</complexType>
</element>
<element name="TradePrice">
<complexType>
<all>
<element name="price" type="float"/>
</all>
</complexType>
</element>
</schema>
</types>
Message:-
The <message> element provides an abstract, typed definition of the data being
communicated. A message consists of parts, each of which describes one logical,
abstract unit of the message. A WSDL can define one or more messages, each of
which may have one or more parts. For example, the WSDL fragment in Example 35-2
defines four message types, sellerInfoMessage, buyerInfoMessage, response, and
negotiationMessage, each of which has one or more parts.
Example 35-2 WSDL Message Example
<message name="sellerInfoMessage">
<part name="inventoryItem" type="xsd:string"/>
<part name="askingPrice" type="xsd:integer"/>
</message>
<message name="buyerInfoMessage">
<part name="item" type="xsd:string"/>
<part name="offer" type="xsd:integer"/>
</message>
<message name="response">
<part name="result" type="xsd:string"/>
</message>
<message name="negotiationMessage">
<part name="item" type="xsd:string"/>
<part name="price" type="xsd:integer"/>
<part name="outcome" type="xsd:string"/>
</message>
Port Type:-
The <portType> element defines a set of operations supported by one or more
endpoints (which are defined in the <port> element). The port type provides the
public interface for the operations provided by the service. Each operation is defined
in an <operation> element, each of which is an abstract description of an action
supported by the service.
For example, the fragment in Example 35-3 defines a port type with one operation,
GetLastTradePrice, which can handle an input message, GetLastTradePriceInput, and
34
an output message, GetLastTradePriceOuput. The concrete descriptions of these
messages are defined in the WSDL binding, as shown in the
<soap:operation>subelement in Example 35-4.
Example:- WSDL Port Type and Operation Example
<portType name="StockQuotePortType">
<operation name="GetLastTradePrice">
<input message="tns:GetLastTradePriceInput"/>
<output message="tns:GetLastTradePriceOutput"/>
</operation>
</portType>
Binding:-
The <binding> element specifies a concrete data format specification and a concrete
transport protocol for a port type.
The fragment in Example 35-4 specifies the binding for the StockQuotePortType port
type, which is provided as the value for the type attribute. The
<soap:binding>subelement signifies that the binding is bound to the SOAP protocol
format. In that subelement, the style attribute specifies that the data format is SOAP
document style, and the transport attribute specifies that the transport protocol is
HTTP.
Example 35-4 WSDL Binding Example
<binding name="StockQuoteSoapBinding" type="tns:StockQuotePortType">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="GetLastTradePrice">
<soap:operation
soapAction="http://example.com/GetLastTradePrice"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
</binding>
Service and Port:-
The <service> element defines a collection of related endpoints, each of which is
defined in a child <port> element. A port is defined as a binding associated with a
network address. For example, the fragment shown in Example 35-5 defines two
ports, StockQuotePort, and StockQuotePortUK. They both use the same
binding,tns:StockQuoteSoapBinding, (which is concretely defined in <binding>) but
have different network addresses: http://example.com/stockquote
vs.http://example.uk/stockquote. These are alternative ports available for this
service.
Example 35-5 WSDL service and port Example
35
<service name="StockQuoteService">
<port name="StockQuotePort" binding="tns:StockQuoteSoapBinding">
<soap:address location="http://example.com:9999/stockquote"/>
</port>
<port name="StockQuotePortUK" binding="tns:StockQuoteSoapBinding">
<soap:address location="http://example.uk:9999/stockquote"/>
</port>
</service>
Question: To connect to source system which service we will use?
Answer: we will use Proxy service to connect to Source system.
Question: To connect to target system which service we will use?
Answer: we will use Business service to connect to target system.
Question: What is Proxy Service?
Answer: Proxy services are OSB definitions of intermediary Web services that OSB implements
locally on Oracle WebLogic Server
It is a service in OSB which is exposed to source system or application. A proxy service can route
messages to multiple business services.
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
Question: What is Business Service?
Answer: Business services are Oracle Service Bus definitions of the enterprise services that
exchange messages during business processes.
It is a service in OSB which is used to connect to target system.
Question: What is Message Flow?
Answer: A message flow is the implementation of a proxy service.
You configure the 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.(or)
Message flow is there in proxy service, We do all types of transformation, routing and other
processing message flow only.
Question:-What is Start node?
Answer: Every message flow begins with a start node.
All messages enter the message flow through the start node, and all response messages are
returned to the client through the start node.
There is nothing to configure in a start node.
36
Question: What is Pipeline?
Answer: 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.
Each pipeline consists of a sequence of stages.
Question: What is Stage?
Answer: Stage is a user-configured processing step.
Messages fed into the pipelines are accompanied by a set of message context variables that
contain the message contents.
They can be accessed or modified by actions in the pipeline stages.
Question: What is Branch node?
Answer:
• A branch node allows processing to proceed along exactly one of several possible paths.
• Two kinds of branching are supported in message flows message flow one is operational
branch and conditional branch
• Operational branching is supported for WSDL-based services, where the branching is based
on operations defined in the WSDL.
• You must use operational branching when a proxy service is based on a WSDL with multiple
operations.
• Conditional branching is supported for conditions defined in an X-Path-based switch table.
• Use conditional branching to branch based on a specified condition.
• Conditional branching is driven by a lookup table with each branch tagged with simple,
unique string values.
• At run time, the variable or the expression is evaluated, and the resulting value is used to
determine which branch to follow.
• If no branch matches the value, the default branch is followed.
• operational branching, configured in an operational branch node, and
• conditional branching, configured in a conditional branch node.
37
Question: What is Root node?
Answer: A route node performs request/response communication with another service.
• It represents the boundary between request and response processing for the proxy service.
• When the route node dispatches a request message, the request processing is considered
complete.
• The route node supports conditional routing as well as request and response
transformations.
Because a route node represents the boundary between request and response processing, it cannot
have any descendants in the message flow
Question: Do we have global variable in OSB (Can we access variable which is defined in proxy
service message flow from other proxy service message flow)?
Answer: No, we can't access variable in proxy service message flow from other proxy service
message flow.
Question: Can we use direct bindings to call SOA composites?
Answer: Yes, we can direct binding-bindings to call SOA composites along with SOAP bindings.
Question: Where the file will go if there is any error while polling the file?
Answer: During configuring file or ftp protocol in OSB, we need to specify error directory, so you
can see file to that directory if file polling failed.
Question: Why we use Split-Joins in OSB?
Answer: To do parallel processing.
Question: Types of Split-Joins?
Answer: Static and dynamic.
Question: How to call Java code from OSB?
Answer: By using Java callout activity.
Question: Can we use more than one route node in message flow?
Answer: No, we can't we use more than one route node in proxy service message flow.
Question: When we call asynchronous service from OSB then how to get response back from that
asynchronous service to OSB?
Answer: Design the proxy service which in turn calls business service which in turn calls
asynchronous service. In the message flow of this proxy change the message header to below.
You need to specify ReplyTo value so that asynchronous service response came to
CallSyncCompositeProxy proxy service.
<soap-env:Header xmlns:ns1="http://schemas.xmlsoap.org/ws/2003/03/addressing">
<ns1:MessageID>ws:uniqueAddress</ns1:MessageID>
<ns1:ReplyTo>
<ns1:Address>http://localhost:8011/CallAsyncService/proxyServices/CallSyncCompositeProxy</n
s1:Address>
</ns1:ReplyTo>
</soap-env:Header>
Remember ReplyTo address refers to CallSyncCompositeProxy endpoints.
For more details refer my below post
http://soawork.blogspot.com/2012/12/call-asynchronous-webservice-from-osb-over-http.html
38
Question: What is throttling in OSB?
Answer: Throttling means we want to process certain messages in one time, then we need to set
some parameters in OSB to do the required task.
For more details refer my below post
http://soawork.blogspot.com/2013/01/throttling-in-osb.html
Question: to transform from binary to XML or XML to binary format what we will in OSB?
Answer: we use MFL.
Question: can we use MDS in OSB?
Answer: No, Oracle Service Bus does not support MDS.
Question: Can we use DVM’s in Oracle Service Bus?
Answer: No, we can’t use DVM’s in Oracle Service Bus.
Dynamic Message Transformation:-
Oracle Service Bus supports the following capabilities for the transformation or processing of
messages:
– Validates incoming messages against schemas
– Selects a target service or services, based on the message content or message
headers
– Transforms messages based on the target service
– Transforms messages based on XQuery or XSLT
– Supports transformations on both XML and MFL messages
– Message enrichment
– Supports callouts to Web services to gather additional data for transformation (for
example, country code, full customer records, and so on)
Actions in Stages and Route Nodes:---
• Actions provide instructions for handling messages in pipeline stages, error handler stages,
and route nodes.
• Based on the context actions are described in 4 different sections:
• Communication Actions
• Flow Control Actions
• Message Processing Actions
• Reporting Actions
Communication Actions:--
Action Use to… Available in…
Dynamicpublish Publishamessage toa service specifiedbyanX-Queryexpression Pipeline stage
Error handlerstage
Route node
Publish Identifyastaticallyspecifiedtargetserviceforamessage andto
configure howthe message ispackagedandsenttothat service
Pipeline stage
Error handlerstage
Publishtable Publishamessage tozeroor more staticallyspecifiedservices.
Switch-styleconditionlogicisusedtodetermine atruntime which
Pipeline stage
Error handlerstage
39
serviceswill be usedforthe publish
 Communication Actions:--
Action Usedto… Available in
Routingoptions Modifyanyor all of the followingpropertiesinthe
outboundrequest:URI,Qualityof Service,Mode,Retry
parameters,Message Priority
Pipeline stage
Service o Configure asynchronous(blocking) callouttoanOracle
Service Bus-registeredproxyorbusinessservice
Pipeline stage
Error handlerstage
Transport headers Setthe headervaluesinmessages Pipeline stage
Error handlerstage
 Flow Control Actions:-
Action Use to... Available in
For each Iterate over a sequence of values and execute a block of
actions
Pipeline stage
Error handler stage
If..then… Perform an action or set of actions conditionally, based on
the Boolean result of an XQuery expression.
Pipeline stage
Route node
Error handler stage
Raise error Raise an exception with a specified error code (a string)
and description.
peline stage
Error handler stage
Resume Resume message flow after an error is handled by an error
handler. This action has no parameters and can only be
used in error handlers.
Error handler stage
 Flow Control Actions:-
Action Use to... Available in
Reply Specify that an immediate reply be sent to the invoker Pipeline stage
Error handler stage
Skip Specify that at run time, the execution of this stage is skipped and
the processing proceeds to the next stage in the message flow.
Pipeline stage
Error handler stage
40
Message Processing Actions:-
 Reporting Actions:-
Alert Generate alerts based on message context in a pipeline, to
send to an alert destination
Pipeline stage
Error handler stage
Log Construct a message to be logged and to define a set of
attributes with which the message is logged
Pipeline stage
Error handler stage
Report Enable message reporting for a proxy service. Pipeline stage
Error handler stage
 Message Brokering:-
Service providers and clients exchange messages with an intermediary proxy service instead of
directly with each other, eliminating complexities resulting from heterogeneous communication
protocols and messaging formats
X-Query-based policies or callouts to external services for message routing
Routing policies that apply to both point-to-point and one-to-many routing scenarios (publish). For
publish, routing policies serve as subscription filters
41
SOA Interview Questions
Question: To connect to source system which service we will use?
Answer: we will use Proxy service to connect to Source system.
Question: To connect to target system which service we will use?
Answer: we will use Business service to connect to target system.
Question: What is Proxy Service?
Answer: It is a service in OSB which is exposed to source system or application.
Question: What is Business Service?
Answer: It is a service in OSB which is used to connect to target system.
Question: What is Message Flow?
Answer: Message flow is there in proxy service, We do all types of transformation, routing and
other processing message flow only.
Question: Do we have global variable in OSB (Can we access variable which is defined in proxy
service message flow from other proxy service message flow)?
Answer: No, we can't access variable in proxy service message flow from other proxy service
message flow.
Question: Can we use direct bindings to call SOA composites?
Answer: Yes, we can direct binding-bindings to call SOA composites along with SOAP bindings.
Question: Where the file will go if there is any error while polling the file ?
Answer: During configuring file or ftp protocol in OSB, we need to specify error directory, so you
can see file to that directory if file polling failed.
Question: Why we use Split-Joins in OSB?
Answer: To do parallel processing.
Question: Types of Split-Joins?
Answer: Static and dynamic.
42
Question: How to call Java code from OSB?
Answer: By using Java callout activity.
Question: Can we use more than one route node in message flow?
Answer: No, we can't we use more than one route node in proxy service message flow.
Question: When we call asynchronous service from OSB then how to get response back from that
asynchronous service to OSB?
Answer: Design the proxy service which in turn calls business service which in turn calls
asynchronous service. In the message flow of this proxy change the message header to below.
You need to specify ReplyTo value so that asynchronous service response came to
CallSyncCompositeProxy proxy service.
<soap-env:Header xmlns:ns1="http://schemas.xmlsoap.org/ws/2003/03/addressing">
<ns1:MessageID>ws:uniqueAddress</ns1:MessageID>
<ns1:ReplyTo>
<ns1:Address>http://localhost:8011/CallAsyncService/proxyServices/CallSyncComposit eProxy</n
s1:Address>
</ns1:ReplyTo>
</soap-env:Header>
Remember ReplyTo address refers to CallSyncCompositeProxy endpoints.
For more details refer my below post
http://soawork.blogspot.com/2012/12/call-asynchronous-webservice-from-osb-over-http.html
Question: What is throttling in OSB?
Answer: Throttling means we want to process certain messages in one time, then we need to set
some parameters in OSB to do the required task.
For more details refer my below post
http://soawork.blogspot.com/2013/01/throttling-in-osb.html
Question: to transform from binary to XML or XML to binary format what we will in OSB?
Answer: we use MFL.
Question: can we use MDS in OSB?
Answer: No, Oracle Service Bus does not support MDS.
Question: Can we use DVM’s in Oracle Service Bus?
Answer: No, we can’t use DVM’s in Oracle Service Bus.
Question: What is “Minimum Age” in File adapter?
Answer: This parameter specifies the minimum age of files to be retrieved. This enables a large
file to be completely copied into the input directory before it is retrieved for processing.
Question: What is trigger file in File adapter?
Answer: When we choose “Trigger File” checkbox, file adapter will not poll/read the file/files from
specified directory unless it sees trigger file in trigger file directory. Once trigger files is there in the
trigger file directory, file adapter will start polling the files.
43
Question: What is Logical path in File adapter?
Answer: This parameter specifies the logical input directory to be polled. The parameter is of type
String. We provide value of logical path in composite.xml file.
Question: How to handle errors when we unable to read/poll a file using file adapter if that file is
corrupt?
Answer: We need to use File rejection handler to catch these types of error.
Question: What is Sync-Read in file adapter?
Answer: When we want to read a file in between our BPEL flow then we use this option.
Question: Can we read remote files using file adapter?
Answer: To read file from remote location we need to use FTP adapter.
Question: What is native format?
Answer: when we want to read the file as it, means we don’t want to transform file content to
XML format then we use native format option.
Question: What is OWSM?
Answer: OWSM stands for Oracle Web Service Manager. Oracle Web Services Manager offers a
comprehensive and easy-to-use solution for policy management and security of service
infrastructure. It is a standalone platform for securing and managing access to web services.
Question: How do we call secured web service from SOA?
Answer: By using OWSM policies.
Question: Can we generate custom OWSM policies?
Answer: Yes, we can create custom OWSM policies.
Question: By how many ways we can add OWSM policy to Web Service?
Answer:
· Through policy annotations at design time
· Via the Administration Console at runtime
· Via Fusion Middleware Control or WLST
Question: When we call secured web service from SOA, which policy we will use “Client” or
“Service”?
Answer: When we call secured web service from SOA then we add “Client” policy to reference
partner link and when we want to secure our web service then we use “Service” policy.
Question: Can we use OWSM with Oracle Service Bus?
Answer: Yes, we can access OWSM policies from OSB.
Question: Can we attach OWSM policy to multiple composites to secure composites?
Answer: yes, we can apply one policy to all composites in one domain using policy sets.
44
Question: what is the scope of Policy Sets or where we can apply Policy sets ?
Answer:
· Domain — all policy subjects of the specified type in a domain
· Application or Partition—all policy subjects of the specified type in an application or SOA
partition
· Application module or SOA composite—all policy subjects of the specified type in an application
module or SOA composite
· Service or reference—all policy subjects of the specified type in a SOA service or reference
· Port or component—all policy subjects of the specified type in a port or SOA component
Question: By how many ways we can handle error/fault in BPEL?
Answer: By using Catch blocks & Fault handling framework.
Question: Can we use both Catch block & fault handling framework in one BPEL?
Answer: Yes, we can have both Catch Block & Fault policies files in one BPEL.
Question: Standard Faults in BPEL?
Answer: Below is the list of Standard Faults in BPEL.
· bindingFault, conflictingReceive, conflictingRequest, correlationViolation
· forcedTermination, invalidReply, joinFailure, mismatchedAssignmentFailure
· remoteFault, repeatedCompensation, selectionFailure, uninitializedVariable
Question: Standard Faults in Mediator?
Answer: Mediator has only one standard fault.
{http://schemas.oracle.com/mediator/faults}mediatorFault.
Question: How to get Fault Trace in CatchAll block?
Answer: By using getFaultAsString() function.
Question: Can we have custom faults in BPEL?
Answer: Yes we can create custom faults in BPEL, these faults are usually called Business Faults
and we usually handle it by using specific Catch block.
Question: Can we re throw a fault from Catch blocks?
Answer: Yes, we can re-throw fault from Catch block.
Question: Where we keep fault-policies.xml & fault-binding.xml files?
Answer: We can keep these files either local to project or in MDS and in both the cases we have to
specify the path in composite.xml file.
Question: What is MDS & Why we use MDS in Oracle SOA?
Answer: MDS stands for Oracle MetaData Service. It is central repository inside Oracle Fusion
Middleware. MDS purpose is to provide centralized store where we can keep, manage & access
metadata.
45
Metadata is often defined as data about data, or in other words, piec es of information that
describes and gives meaning to other information. Typical examples of metadata used by Oracle
Fusion Middleware components are XML files, XSD schema files, XSL transformations, SCA
composites, BPEL processes, WSDLs, business rules, Oracle ADF pages, JaveServer Pages (JSP),
and Oracle ADF task flows, among others.
The same metadata that is used during the design phase of application is used at application
runtime through the metadata service layer. This ensures consistency through the lifecycle of the
application. Metadata such as XML files or XSD schema files is usually shared among different
components. Therefore, it is not only necessary that those resources can be accessed easily and
referenced by all the components, but it is also important that they remain consistent; a change in
the metadata should be reflected in all the components that are referencing it. Having only one
copy of each metadata resource avoids unnecessary redundancy and guarantees that the changes
are made in only one place.
Question: Types of MDS Repository?
Answer: File-Based & DB Based.
Question: What is File-Based MDS Repository?
Answer: The idea behind file-based repositories is to allow developers to have a light repository
available in their local environment that can be easily adapted for development and tests; a file-
based repository relieves developers of having to configure and maintain an external database
while providing necessary functionality, such as file referencing and customizations. These kinds of
repositories are easily modified and maintained, since they define a directory structure similar to
any other directory structure inside an operating system. They can be navigated and altered using
common shell commands or any kind of visual file explorer application. The file-based repository is
configuration is used.
Question: What is DB-Based MDS Repository?
Answer: Database-based repositories are used in production environments where robustness is
needed. These repositories are created using the Repository Creation Utility (RCU) application from
Oracle. This utility helps with the creation of a new database schema with its corresponding tables
and objects. Repositories can later be registered or deregistered via the Oracle Enterprise Manager
Fusion Middleware Control console.
Question: Which configuration file store MDS configurations?
Answer: The adf-config.xml file is a configuration file that is used to store MDS Configurations.
Question: What type of WSDL file we usually keep in MDS?
Answer: We usually keep Abstract WSDL’s only in MDS
Question: What is WSDL ?
Answer : WSDL stands for Web Services Description Language
WSDL is a document written in XML. The document describes a Web service. It specifies the
location of the service and the operations (or methods) the service exposes.
46
Question: Explain elements/tags of WSDL ?
Answer :
Element
Name
Description
types A container for abstract type definitions defined using XML
Schema
message A definition of an abstract message that may consist of multiple
parts, each part may be of a different type
portType An abstract set of operations supported by one or more
endpoints (commonly known as an interface); operations are
defined by an exchange of messages
binding A concrete protocol and data format specification for a particular
portType
service A collection of related endpoints, where an endpoint is defined as
a combination of a binding and an address (URI)
Question: Difference between Abstract and Concrete WSDL ?
Answer : Abstract WSDL contains only messages and operations. Abstract WSDL is
used by SOAP Server.
Where as concrete WSDL contains messages, operations and transport
specific information (JMS or Http). This is used by SOAP client.
Difference Between Concreate WSDL And Abstract WSDL
An abstract WSDL document describes what the web service does, but not how it does it or how to
contact it. An abstract WSDL document defines:
the operations provided by the web service.
the input, output and fault messages used by each operation to communicate with the web service,
and their format.
A concrete WSDL document adds the information about how the web service communicates and
where you can reach it. A concrete WSDL document contains the abstract WSDL definitions, and
also defines:
the communication protocols and data encodings used by the web service.
the port address that must be used to contact the web service.
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions
Soa interview questions

More Related Content

What's hot

Maximizing SAP ABAP Performance
Maximizing SAP ABAP PerformanceMaximizing SAP ABAP Performance
Maximizing SAP ABAP PerformancePeterHBrown
 
Beginner's Guide: Programming with ABAP on HANA
Beginner's Guide: Programming with ABAP on HANABeginner's Guide: Programming with ABAP on HANA
Beginner's Guide: Programming with ABAP on HANAAshish Saxena
 
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPELOracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPELGuido Schmutz
 
SOA Service Oriented Architecture
SOA Service Oriented ArchitectureSOA Service Oriented Architecture
SOA Service Oriented ArchitectureVinay Rajadhyaksha
 
Oracle Human Capital Management
Oracle Human Capital ManagementOracle Human Capital Management
Oracle Human Capital ManagementAddvantum
 
Service oriented architecture
Service oriented  architectureService oriented  architecture
Service oriented architecturePratik Patil
 
Agile Operating Model at Scale
Agile Operating Model at ScaleAgile Operating Model at Scale
Agile Operating Model at ScaleAmish Khatri
 
SAP BASIS Practice Exam
SAP BASIS Practice ExamSAP BASIS Practice Exam
SAP BASIS Practice ExamIT LearnMore
 
Mainframe Possible: Migrating a Mainframe to AWS
Mainframe Possible: Migrating a Mainframe to AWSMainframe Possible: Migrating a Mainframe to AWS
Mainframe Possible: Migrating a Mainframe to AWSAmazon Web Services
 
Implementation of cloud computing
Implementation of cloud computing Implementation of cloud computing
Implementation of cloud computing Nadeemulla Sheriff
 
Leading Practices in Multi-Pillar Oracle Cloud Implementations
Leading Practices in Multi-Pillar Oracle Cloud ImplementationsLeading Practices in Multi-Pillar Oracle Cloud Implementations
Leading Practices in Multi-Pillar Oracle Cloud ImplementationsAlithya
 
Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)Biniam Asnake
 
62620940 charm-configuration-procedures
62620940 charm-configuration-procedures62620940 charm-configuration-procedures
62620940 charm-configuration-proceduresnarendar99
 
SAP BusinessObjects BI 4.3
SAP BusinessObjects BI 4.3SAP BusinessObjects BI 4.3
SAP BusinessObjects BI 4.3Wiiisdom
 

What's hot (20)

SAP PI PO
SAP PI POSAP PI PO
SAP PI PO
 
Oracle Fusion Financial Report Centre Reporting Beginner course
Oracle Fusion Financial Report Centre Reporting Beginner courseOracle Fusion Financial Report Centre Reporting Beginner course
Oracle Fusion Financial Report Centre Reporting Beginner course
 
Maximizing SAP ABAP Performance
Maximizing SAP ABAP PerformanceMaximizing SAP ABAP Performance
Maximizing SAP ABAP Performance
 
Beginner's Guide: Programming with ABAP on HANA
Beginner's Guide: Programming with ABAP on HANABeginner's Guide: Programming with ABAP on HANA
Beginner's Guide: Programming with ABAP on HANA
 
ESB Overview
ESB OverviewESB Overview
ESB Overview
 
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPELOracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
Oracle Service Bus vs. Oracle Enterprise Service Bus vs. BPEL
 
CDS Views.pptx
CDS Views.pptxCDS Views.pptx
CDS Views.pptx
 
SOA Service Oriented Architecture
SOA Service Oriented ArchitectureSOA Service Oriented Architecture
SOA Service Oriented Architecture
 
Oracle Human Capital Management
Oracle Human Capital ManagementOracle Human Capital Management
Oracle Human Capital Management
 
Cloud Migration Strategy Framework
Cloud Migration Strategy FrameworkCloud Migration Strategy Framework
Cloud Migration Strategy Framework
 
Service oriented architecture
Service oriented  architectureService oriented  architecture
Service oriented architecture
 
Agile Operating Model at Scale
Agile Operating Model at ScaleAgile Operating Model at Scale
Agile Operating Model at Scale
 
SAP BASIS Practice Exam
SAP BASIS Practice ExamSAP BASIS Practice Exam
SAP BASIS Practice Exam
 
Mainframe Possible: Migrating a Mainframe to AWS
Mainframe Possible: Migrating a Mainframe to AWSMainframe Possible: Migrating a Mainframe to AWS
Mainframe Possible: Migrating a Mainframe to AWS
 
Implementation of cloud computing
Implementation of cloud computing Implementation of cloud computing
Implementation of cloud computing
 
Leading Practices in Multi-Pillar Oracle Cloud Implementations
Leading Practices in Multi-Pillar Oracle Cloud ImplementationsLeading Practices in Multi-Pillar Oracle Cloud Implementations
Leading Practices in Multi-Pillar Oracle Cloud Implementations
 
Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)Service Oriented Architecture (SOA)
Service Oriented Architecture (SOA)
 
62620940 charm-configuration-procedures
62620940 charm-configuration-procedures62620940 charm-configuration-procedures
62620940 charm-configuration-procedures
 
SAP BusinessObjects BI 4.3
SAP BusinessObjects BI 4.3SAP BusinessObjects BI 4.3
SAP BusinessObjects BI 4.3
 
TOGAF ADM cycle
TOGAF ADM cycleTOGAF ADM cycle
TOGAF ADM cycle
 

Similar to Soa interview questions

TOLL MANAGEMENT SYSTEM
TOLL MANAGEMENT SYSTEMTOLL MANAGEMENT SYSTEM
TOLL MANAGEMENT SYSTEMvishnuRajan20
 
Toll management system (1) (1)
Toll management system (1) (1)Toll management system (1) (1)
Toll management system (1) (1)vishnuRajan20
 
Microservices architecture
Microservices architectureMicroservices architecture
Microservices architectureFaren faren
 
Peoplesoft PIA architecture
Peoplesoft PIA architecturePeoplesoft PIA architecture
Peoplesoft PIA architectureAmit rai Raaz
 
Microservices architecture enterprise architecture
Microservices architecture enterprise architectureMicroservices architecture enterprise architecture
Microservices architecture enterprise architectureAdhiguna Mahendra
 
Multiplexing in Thrift: Enhancing thrift to meet Enterprise expectations- Imp...
Multiplexing in Thrift: Enhancing thrift to meet Enterprise expectations- Imp...Multiplexing in Thrift: Enhancing thrift to meet Enterprise expectations- Imp...
Multiplexing in Thrift: Enhancing thrift to meet Enterprise expectations- Imp...Impetus Technologies
 
Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11koolkampus
 
Bt9002 Grid computing 2
Bt9002 Grid computing 2Bt9002 Grid computing 2
Bt9002 Grid computing 2Techglyphs
 
Cloud Foundry Technical Overview
Cloud Foundry Technical OverviewCloud Foundry Technical Overview
Cloud Foundry Technical Overviewcornelia davis
 
Microservices for performance - GOTO Chicago 2016
Microservices for performance - GOTO Chicago 2016Microservices for performance - GOTO Chicago 2016
Microservices for performance - GOTO Chicago 2016Peter Lawrey
 
Backend Basic in nodejs express and mongodb PPT.pdf
Backend  Basic in nodejs express and mongodb PPT.pdfBackend  Basic in nodejs express and mongodb PPT.pdf
Backend Basic in nodejs express and mongodb PPT.pdfsadityaraj353
 
Microsoft BizTalk server seen by the programmer’s eyes
Microsoft BizTalk server seen by the programmer’s eyesMicrosoft BizTalk server seen by the programmer’s eyes
Microsoft BizTalk server seen by the programmer’s eyesSandro Pereira
 
All-inclusive insights on Building JavaScript microservices with Node!.pdf
All-inclusive insights on Building JavaScript microservices with Node!.pdfAll-inclusive insights on Building JavaScript microservices with Node!.pdf
All-inclusive insights on Building JavaScript microservices with Node!.pdfShelly Megan
 

Similar to Soa interview questions (20)

Osbsoa1
Osbsoa1Osbsoa1
Osbsoa1
 
TOLL MANAGEMENT SYSTEM
TOLL MANAGEMENT SYSTEMTOLL MANAGEMENT SYSTEM
TOLL MANAGEMENT SYSTEM
 
Toll management system (1) (1)
Toll management system (1) (1)Toll management system (1) (1)
Toll management system (1) (1)
 
Microservices architecture
Microservices architectureMicroservices architecture
Microservices architecture
 
Peoplesoft PIA architecture
Peoplesoft PIA architecturePeoplesoft PIA architecture
Peoplesoft PIA architecture
 
Microservices architecture enterprise architecture
Microservices architecture enterprise architectureMicroservices architecture enterprise architecture
Microservices architecture enterprise architecture
 
Multiplexing in Thrift: Enhancing thrift to meet Enterprise expectations- Imp...
Multiplexing in Thrift: Enhancing thrift to meet Enterprise expectations- Imp...Multiplexing in Thrift: Enhancing thrift to meet Enterprise expectations- Imp...
Multiplexing in Thrift: Enhancing thrift to meet Enterprise expectations- Imp...
 
Thrift
ThriftThrift
Thrift
 
Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11
 
Bt9002 Grid computing 2
Bt9002 Grid computing 2Bt9002 Grid computing 2
Bt9002 Grid computing 2
 
Soa & Bpel With Web Sphere
Soa & Bpel With Web SphereSoa & Bpel With Web Sphere
Soa & Bpel With Web Sphere
 
Soa & Bpel With Web Sphere
Soa & Bpel With Web SphereSoa & Bpel With Web Sphere
Soa & Bpel With Web Sphere
 
Cloud Foundry Technical Overview
Cloud Foundry Technical OverviewCloud Foundry Technical Overview
Cloud Foundry Technical Overview
 
Soa implementation styles
Soa implementation stylesSoa implementation styles
Soa implementation styles
 
Microservices for performance - GOTO Chicago 2016
Microservices for performance - GOTO Chicago 2016Microservices for performance - GOTO Chicago 2016
Microservices for performance - GOTO Chicago 2016
 
Backend Basic in nodejs express and mongodb PPT.pdf
Backend  Basic in nodejs express and mongodb PPT.pdfBackend  Basic in nodejs express and mongodb PPT.pdf
Backend Basic in nodejs express and mongodb PPT.pdf
 
Microsoft BizTalk server seen by the programmer’s eyes
Microsoft BizTalk server seen by the programmer’s eyesMicrosoft BizTalk server seen by the programmer’s eyes
Microsoft BizTalk server seen by the programmer’s eyes
 
Microservices.pptx
Microservices.pptxMicroservices.pptx
Microservices.pptx
 
All-inclusive insights on Building JavaScript microservices with Node!.pdf
All-inclusive insights on Building JavaScript microservices with Node!.pdfAll-inclusive insights on Building JavaScript microservices with Node!.pdf
All-inclusive insights on Building JavaScript microservices with Node!.pdf
 
Ch12
Ch12Ch12
Ch12
 

More from xavier john

More from xavier john (20)

Unix day4 v1.3
Unix day4 v1.3Unix day4 v1.3
Unix day4 v1.3
 
Unix day3 v1.3
Unix day3 v1.3Unix day3 v1.3
Unix day3 v1.3
 
Unix day2 v1.3
Unix day2 v1.3Unix day2 v1.3
Unix day2 v1.3
 
Interview questions
Interview questionsInterview questions
Interview questions
 
Xavier async callback_fault
Xavier async callback_faultXavier async callback_fault
Xavier async callback_fault
 
Custom faultpolicies
Custom faultpoliciesCustom faultpolicies
Custom faultpolicies
 
All adapterscommonproperties
All adapterscommonpropertiesAll adapterscommonproperties
All adapterscommonproperties
 
Custom faultpolicies
Custom faultpoliciesCustom faultpolicies
Custom faultpolicies
 
Oracle business rules
Oracle business rulesOracle business rules
Oracle business rules
 
Soap.doc
Soap.docSoap.doc
Soap.doc
 
Soa installation
Soa installationSoa installation
Soa installation
 
Vx vm
Vx vmVx vm
Vx vm
 
Webservices
WebservicesWebservices
Webservices
 
While.doc
While.docWhile.doc
While.doc
 
Xml material
Xml materialXml material
Xml material
 
Xpath
XpathXpath
Xpath
 
X query
X queryX query
X query
 
Xsd basics
Xsd basicsXsd basics
Xsd basics
 
Xsd
XsdXsd
Xsd
 
Xslt
XsltXslt
Xslt
 

Recently uploaded

Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROmotivationalword821
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 

Recently uploaded (20)

Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTRO
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 

Soa interview questions

  • 1. 1 SOA Interview Questions Explain About Web service? Web service is type of software system which is used for exchange the data and use information from one machine to another machine through network. Generally Web services based on the standards such as TCP/IP, HTTP, Java, HTML and XML. Web services are pure xml based which is used for exchange information through Internet to direct application to application interaction These systems include programs, objects, messages or documents. Many software applications written in various programming languages and running on various platforms can use web services to exchange data over computer network. You can develop Java-based web services on Solaris and that is accessible from your V.B Program that runs on windows. Q)-SOA Development lifecycle ? Ans)-"From the hundred thousand foot level, you try to establish a need, you gather requirements, you try to architect a solution and then you develop and you test and then you deploy and manage it. At the end of life, you either modify it or retire it." 1) What is SOA? Service Oriented Architecture (SOA) is used to develop Enterprise applications by using a collection of services which communicates each other. Service-Oriented Architecture (SOA) is a set of principles and methodologies for designing and developing software in the form of interoperable services. 2) Principles of SOA? · loose coupling · Re-usability · Interoperability · Flexible 3) What is the difference between 10g and 11g? SCA architecture was followed in 11g and not in 10g · In 11g you can put all your project SOA components in composite.xml file and deploy as a single deployment unit to single server, where in 10g you have to deploy each component to the respective server (i.e. ESB to ESB server, BPEL to BPEL Server) · Basically all the SOA components like BPEL, ESB (Called Mediator in 11g), & OWSM are brought into one place in 11g using SCA composite concept. · The major difference between 10g & 11g would be the app server container. 10g by default runs onOC4J while 11g runs on Web logic Server. · In 10g every BPEL is a separate project, but in 11g several components can make 1 project as SCA. · In 10g consoles are separate for BPEL and ESB, but in 11g Enterprise Manager contains all.
  • 2. 2 · In 10g BAM and business rules are outside SOA Suite, but in 11g they are in SOA Suite. 4) Is Oracle SOA same as Oracle Fusion Middleware? No because SOA is one of the parts in Fusion middleware and SOA behaves like user interface where as Fusion is big platform 5) What is SCA? Service Component Architecture (SCA) provides a programming model for building applications and systems based on a Service Oriented Architecture. SCA is a model that aims to encompass a wide range of technologies for service components and for the access methods which are used to connect them. 6) What is the SOA Suite 11g Components? · Oracle Adapters · Oracle Mediator · Business Events and Events Delivery Network · Oracle Business Rules · Human Workflow · Oracle Business Activity Monitoring · Oracle Enterprise Manager 7) What is choreography? How does it differ from orchestration? In choreography there is no business process to control the integration between the systems; each system will directly integrate with one another in sequence where as in Orchestration there is a business process which controls all the services (source/Target) which is part of the integration. 8) What are the different design patterns in SOA? · Synchronous · Asynchronous Fire and Forget · Asynchronous Delayed Response. 9) In how many ways can a process be deployed? · Using JDeveloper · Through Enterprise Manger Console · Through Weblogic Scripts. 10) What are dspMaxThread and a recieverThread properties? Why are they important? ReceiverThreads property specifies the maximum number of MDBs that process aysc across all domains. Whereas the dspMaxThreads are the maximum number of MDBs that process asy and threads that operate across a domain. So, we need to ensure that the dspMaxThreads value is !> ReceiverThreads.
  • 3. 3 11) How does a async request run in the backend? The sequence of events involved in the delivery of invoke messages is as follows: · The client posts the message to the delivery service. · The delivery service saves the invocation message to the invoke_message table.The initial state of the message is 0 (undelivered). · The delivery service schedules a dispatcher message to process the invocation message asynchronously. · The dispatcher message is delivered to the dispatcher through the afterCompletion() call. Therefore, the message is not delivered if the JTA transaction fails. · The dispatcher sends the JMS message to the queue. Places a very short JMS message in the in-memory queue(jms/collaxa/BPELWorkerQueue) in OC4J JMS. The small JMS message triggers the WorkerBean in the downstream step. · This message is then picked up by a WorkerBean MDB, which requests the dispatcher for work to execute. If the number of WorkerBean MDBs currently processing activities for the domain is sufficient, the dispatcher module may decide not to request another MDB. · MDB fetches the invocation message from the dispatcher. · MDB passes the invocation message to Oracle BPEL Server, which updates the invocation message state to 1 (delivered), creates the instance, and executes the activities in the flow until a breakpoint activity is reached. 12) How to increase the transaction timeouts in SOA? For the transaction timeout needs to be increased, all the below settings timeout value needs to be changed to the expected Timeout value. · JTA · Engine Bean · Delivery Bean 13) Is it possible to use MS SQL Server as dehydration store with SOA Suite ?if yes how? Yes it is possible. To automatically maintain long-running asynchronous processes and their current state information in a database while they wait for asynchronous callbacks, you use a database as a dehydration store.Storing the process in a database preserves the process and prevents any loss of state or reliability if a system shuts down or a network problem occurs. This feature increases both BPEL process reliability and scalability. You can also use it to support clustering and failover. 14) What is SOA governance? What are its functions? Service-Oriented Architecture (SOA) governance is a concept used for activities related to exercising control over services in an SOA Some key activities that are often mentioned as being part of SOA governance are: Managing the portfolio of services: This includes planning development of new services and updating current services.Managing the service lifecycle: This is meant to ensure that updates of services do not disturb current services to the consumers. Using policies to restrict behavior: Consistency of services can be ensured by having the rules applied to all
  • 4. 4 the created services. Monitoring performance of services: The consequences of service downtime or underperformance can be severe because of service composition. Therefore action can be taken instantly when a problem occurs by monitoring service performance and availability. 15) What is end point virtualization? Generally a service bus is used for endpoint virtualization and in 11g stack; Oracle Service Bus (OSB) is the primary service bus. In exposed proxy's message flow, it can route the request to any of your environment's actual (physical) service on the basis of whatever logic. Mediator can also be used to expose the service and in mediator routing rule, it can be routed to actual service. 16) What are DVM's and how are they helpful in SOA? DVM-Domain Value Map are static mappings between a source and target system which can be used in transformations. The value can be changed via SOA composer. 17) What is the difference between XREF and DVM? b stored in XREF_DATA table in SOA Dehydration store. DVM- Domain Value Map is static mappings between a source and target system which can be used in transformations. 18) What is Dehydration store? Dehydration store is the database where the instances get stored when it gets dehydrated by the process on the occurrence of non-idempotent activities and also stores the information on the long running processes. 19) What is Decision service? Oracle SOA Suite provides support for Decision components that support Oracle Business Rules. A Decision component is a mechanism for publishing rules and rulesets as a reusable service that can be invoked from multiple business processes.These rules can be changed without redeploying the code. 20) Why we use BPEL and OSB? OSB is the light-weight service bus wherever there is not much business logic involves and there is need to just get the message routed between the systems OSB is used where as when there is more business logic involves in the process,then BPEL will be used. 21) What is MDS? MDS –Metadata Store Wsdl and Schemas to be used in the process can be published to the MDS and get it used in the code by referring the artifacts from the MDS Advantages: • JAR (Deployment unit) size will be reduced. • Duplication of the artifacts can be avoided between the services.
  • 5. 5 22) What is a XA datasource? How it differs from a non-XA datasource? An XA transaction involves a coordinating transaction manager, with one or more databases (or other resources, like JMS) all involved in a single global transaction. Non-XA transactions have no transaction coordinator, and a single resource is doing all its transaction work itself (this is sometimes called local transactions). 23) How can we secure our web services using Oracle SOA Suite? When accessing the services should be restricted to the group,then service should be secured via WSM (Web service Manager). 24) How to deploy an XSL file without deployment of BPEL Process? We will directly deploy the XSLT, options: - • Using ANT script by file replacement in TMP folder. • By creating a folder in BPEL PM installation folder and specifying its location in our BPEL code with http call and replacing our xslt to that location. 25) What is HA File and FTP Adapters? In the clustered environment,File and FTP adapters should be used as HA(High-Availability) Inbound:It is controlled by Control Files and avoids the race between the manages servers in reading the files where the reference of the files read by the managed servers will be maintained in the control directory. Outbound:It is controlled by DB Mutex table exist in the SOA dehydration store and this avoids duplicated been written to the same file when all the managed servers in the clusters process the same messages. 26) What is singleton Property in SOA? In the clustered environment when the processing of the message should happen via only one SOA managed server, then the property singleton needs to be defined at the adapter level. 27) What is a pick activity? Can I have a pick activity with no onMessage branch? Pick activity picks the messages from service (Source) which has multiple operations or the BPEL process needs to receive the messages from multiple source system. Pick activity should have at least on Message branch. 28) What is a flow activity? What is a flowN activity and how does it leverages the flow activity? Flow activity is used, when parallel execution of the flow is needed and to use this property “non blocking invoke should be set as true “at the partner link level and no. of execution of parallel flow is defined and static. Where as in Flown the no. of execution of parallel flow is not static and it is determined during run time. 29) What do you mean by non-idempotent activity? Which all activities are non-idempotent by default? Activities like Pick, Wait, receive, reply and checkpoint() are called non-Idempotent activity and during the execution of the process whenever these activities are encountered then it gets dehydrated to the dehydration store.
  • 6. 6 30) How can we embed or use a java code in BPEL? Using JAVA embedding activity in BPEL,Java code can be embedded in BPEL and can be used. 31) How does pick activity differ from a receive activity? Pick activity can act as a multiple recieve activity in some business scenarios.If we have two inbound operations and both can trigger the bpel process then we will go with pick activity as we can’t have two recieve activity with create Instance box checked. 32) How can we make a partner link dynamic? If we have to send the request to different service which has the same wsdl then dynamic partner link will be used and using addressing schema we can set the endpoint dynamic to send the request to the desired service. 33) What is a nonBlockingAll property? Non- blocking invoke is used when Parallel flow needs to be executed where new thread will be created for each invoke a activity and which will execute simultaneously. 34) What is getPreference property? How do we set it and what advantage it provides? Hard coding is not a good practice, so to avoid hard coding preference variable can be used and the value of the preference variable is accessed using getPreference().The preference variable value can be changed without re-deploying the code via em console MBean property. 35) How can we improve the performance of an XSL file? By avoiding use of various if statements and using choose, and by using for-each group in place of for-each. 36) How do we handle transactions in BPEL? Property needs to be defined to start the new transaction/to continue with the same transactions Property Name: Transaction and if this has value as required then the BPEL process will be continued in the same transaction where as if the value is defined as requires new then it will start the new transaction. 37) What are transient and durable BPEL processes? Durable:-It is long running process and initiated through a one-way invocation and do incur one or more dehydration points in the database during execution Ex: Asynchronous Transient:-It is short-lived process, request-response style processes and do not incur dehydration during their process execution Ex: Synchronous. 38) When u will go for Sync process? Whenever the services returns the response in few seconds, it is recommended to go for synchronous BPEL process if not the BPEL process should be Asynchronous the reason is calling application can’t proceed further in case of synchronous process.
  • 7. 7 39) What is a syncFileRead operation? Is a inbound or a outbound operation? Can my process begin with syncFileRead operation? When file has to be read in the mid of the BPEL process, then we will use syncFileRead Operation, means some process should initiate the file read process and it is an outbound operation and process can’t begin with Sync File read. 40) Can we use a File Adapter to get a file without reading its content? Yes, by selecting the Do not read file content check box in the JDeveloper wizard while configuring the "Read operation." 41) How to increase performance increase in bpel (Db Adapter/file adapter)? We can increase the performance by writing indexes and sequences. (Or) Go to application server --- >Configurations ----- > Change Xml file 42) Explain error handling in BPEL and what is a error handling framework? How does a error handling framework better than simple error handling in BPEL? EHF –Whenever any error thrown by the BPEL process/Mediator then EHF will check whether exist in Fault-Bindings.xml files and if so then the action in the Fault-Policy.xml file will be taken and if the action is not found then the fault will the thrown and it will be handled in the catch block. 43) How do we resubmit a faulted process? Scenario A: The BPEL code uses a fault-policy and a fault is handled using the “ora-human-intervention” activity, then the fault is marked as Recoverable and the instance state is set to “Running”. Scenario B: The BPEL code uses a fault-policy and a fault is caught and re-thrown using the “ora-rethrow-fault” action, then the fault is marked as Recoverable and the instance state is set to “Faulted”; provided the fault is a recoverable one (like URL was not available). 44) Predefined errors in BPEL? • Custom errors • Timed out errors • BPM errors • Validation Errors 45) What is a throw activity? What it is ? Throw activity will explicitly throw the fault and this fault will get caught by the catch block and the corresponding actions will get executed. 46) What is Web service? Web services are application components, which are self-contained and self-describing and provide services based on the open protocol communication (i.e. SOAP UI, HTTP over the net).
  • 8. 8 47) Difference between URI and URL? A URI is an identifier for some resource, but a URL gives you specific information as to obtain that resource. A URI is a URL and as one commenter pointed out, it is now considered incorrect to use URL when describing applications. Generally, if the URL describes both the location and name of a resource, the term to use is URI. Since this is generally the case most of us encounter every day, URI is the correct term. 48) What is Mediator? The Mediator is in charge of interconnecting, within an SOA composite application, components that expose different interfaces. In addition, the Mediator can perform duties such as filtering and making routing decisions. The composite editor in JDeveloper gives you the flexibility to define the interface now, to choose an existing interface, or to define the interface later as you wire components to the Mediator. Transforming data from one representation to another is, along with routing, one of the key functions of the Mediator. 49) Difference between ESB and Mediator? In 10g for routing, separate router need to keep along with ESB for routing and filter expressions. Where as in 11g mediator contains routing rules and filter expressions itself. 50) What is the difference between concrete and abstract wsdl? Concrete: Besides the information about how to communicate to the web service, it the information on where the service exist. It has Bindings (Protocol the message should be sent) and Services(has endpoint for each bindings) . Abstract: It has information about how to communicate to the web service like types (Schema), Message (input and output messages service accepts) ,Operat ions (operation that can be performed on this service) and port Type. 51) What is SOAP and what are the binding protocols available? Simple object access protocol and it is a protocol specification for the communication happens between the web services over the network and binding protocol is HTTP. 52) What is the difference between Async and Sync activity on wsdl level? • Async wsdl-It has only input messages for the operation and it has 2 operations one for sending the request and other for call back. • Sync wsdl-It has 2 messages input and output messages for the wsdl operation. 53) What are the WSDL structure? Following are the wsdl structure • Definitions .Types .Messages .Operation • Port type .Bindings .Services .Ports
  • 9. 9 54) What is the significance of target Namespace in a wsdl? It is the one which uniquely identifies the WSDL and when the WSDL is used it should be identified using its Target Namespace. 55) What is structure of SOAP message? The structure of a SOAP message: A SOAP message is encoded as an XML document, consisting of an element, which contains an optional element, and a mandatory element. The element, contained within the , is used for reporting errors. The SOAP envelope-The SOAP is the root element in every SOAP message, and contains two child elements, an optional and a mandatory. The SOAP header-The SOAP is an optional sub-element of the SOAP envelope, and is used to pass application-related information that is to be processed by SOAP nodes along the message path. The SOAP body-The SOAP is a mandatory sub-element of the SOAP envelope, which contains information intended for the ultimate recipient of the message. The SOAP fault-The SOAP is a sub-element of the SOAP body, which is used for reporting errors. 56) Why do we need to have messages in WSDL, aren't operations and types enough to describe the parameters for a web service? Messages consist of one or more logical parts. Each part is associated with a type from some type system using a message-typing attribute. The set of message-typing attributes is extensible. • The element describes the data being exchanged between the Web service providers and consumers. Each Web Service has two messages: input and output. • The input describes the parameters for the Web Service and the output describes the return data from the Web Service. • Each message contains zero or more parameters, one for each parameter of the Web Service's function. • Each parameter associates with a concrete type defined in the container element. So describing the parameters cannot performed by operations and types this is the main need of Messages. 57) What is a inline schema? Schemas can be included inside of XML file is called Inline Schemas. 58) What is the difference between xsd:import and xsd:include? The fundamental difference between include and import is that you must use import to refer to declarations or definitions that are in a different target namespace and you must use include to refer to declarations or definitions that are (or will be) in the same target namespace.
  • 10. 10 59) What is BAM? Business Activity Monitoring is a tool that is useful in monitoring business services and processes. It actively collects data, applies rules and reports information to users. When something goes wrong in business processes, BAM can be configured to take corrective measures such as emailing administrators/support team. 60) How to send the data to BAM from SOA? The Oracle BAM Adapter is a Java Connector Architecture (JCA)-compliant adapter which can be used from a Java EE client to send data and events to the Oracle BAM Server. Oracle BAM Adapter is configured in Oracle Weblogic Server Administration Console to provide any of these connection pools. Oracle BAM Adapter provides three mechanisms by which you can send data to Oracle BAM Active Data Cache from an SOA composite application. 61) What are the ways to publish the data to BAM? There are two ways to publish the data to BAM • BAM Adapter. • BAM Sensor activity level. 62) What are the roles in BAM? • Architect • Administrator • Active Viewer • Active Studio 63) What is forward delay in JMS Queue? In the clustered environment where JMS queues are used, when for the queues in any one of the Managed server doesn’t have the consumer, once messages reac hes the forward delay time it gets moved to the other managed server where consumer is present. 64) What is redelivery limit in JMS Queue? When the message gets failed to get processed ,then it will be re-tried will the redelivery limit exhausts and once after the redelivery limit the message can b e either moved to the error Queue are it can be discarded. 65) What is timetodeliver in JMS Queue? When Messages enqueued to the JMS queue, it will be immediately consumed by the JMS Subscribers, if any delay needs to be induced for the message consuming by the Subscribers then timetodelivery needs to set. The JMS message will not be subscribed until timetodelivery exhausts. 66) Difference between JMS Queues and Topics? Queue-Message will be subscribed by one subscriber. Topic-Message will be subscribed by more than one subscriber. http://interviewquestionsandanswers.biz/interview-questions-list-and-answers/ 1.Diffrence b/w Assign and Transform activity is BPEL? Ans. Asssign is used for simple tasks like initializing the varaibles or for transforming small payloads Transform is used for complex and huge payload transformations.
  • 11. 11 Also,When you use assign the variables reside in the memory...where as transformations invole the use of XSL engine. Assign is to copy some values in a variable to other variable.(might be copy, insert-after,insert-before,append...etc) Transform is to change the styles. But in general, we use the transformation to change the data from one format to anot her format.(I mean one structure to another structure) Whtat is SOAP? SOAP is a simple and open standard XML-based protocol for exchanging information between computers. SOAP is an XML-based protocol for exchanging information between computers. SOAP is XML. That is, SOAP is an application of the XML specification. All statements are TRUE for SOAP SOAP is acronym for Simple Object Access Protocol SOAP is a communication protocol SOAP is designed to communicate via Internet SOAP can extend HTTP for XML messaging SOAP provides data transport for Web services SOAP can exchange complete documents or call a remote procedure SOAP can be used for broadcasting a message SOAP is platform and language independent SOAP is the XML way of defining what information gets sent and how Although SOAP can be used in a variety of messaging systems and can be delivered via a variety of transport protocols, the initial focus of SOAP is remote procedure calls transported via HTTP. SOAP enables client applications to easily connec t to remote services and invoke remote methods. Other frameworks, including CORBA, DCOM, and Java RMI, provide similar functionality to SOAP, but SOAP messages are written entirely in XML and are therefore uniquely platformand language-independent. ----------------------------------------------------------------------------- Links for Diff Concepts Throttling : http://soawork.blogspot.in/2013/01/throttling-in-osb.html --------- Oracle SOA Interview Questions (Mediator) Part-3 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
  • 12. 12 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.
  • 13. 13 Question: Types of Static Routing rules? Answer: Sequential & Parallel. Question:-Whatall activitiesyouhave usedwhiledeveloping yourBPELcomponent. Ans: Activity Name Details Assign Thisactivityprovidesamethodfordata manipulation,suchascopyingthe contentsof one variable toanother.Copyoperationsenableyoutotransfer informationbetweenvariables,expressions, endpoints,andotherelements. Compensate Use to compensate ascope of activitiesthathassuccessfullycompleted. Compensationoccurswhenaprocesscannotcomplete several operationsafter completingothers.The processmustreturnandundothe previouslycompleted operations CheckPoint Enablesyouto explicitlyspecifyadehydrationpoint,usedforforced dehydration. Empty Activity Usedto specifyemptyaction(i.e noexecution),canbe usedasplace holders. FlowActivity Thisactivityenablesyoutospecifyone ormore activitiestobe performed concurrently(parallel flow) FlowN Thisactivityenablesyoutocreate multipleparallel flowsequal tothe value of N, whichisdefinedatruntime basedonthe dataavailable andlogicwithinthe process Invoke Usedto invoke anoperationinthe partnerlinkservice. PickActivity Thisactivitywaitsforthe occurrence of one eventina setof eventsand performsthe activityassociatedwiththatevent.The pickactivityworksas receive activityanditcan be usedto receive messagesfromdifferentoperations. You can alsospecify the onAlarambranchto timeoutwhilewaitingtoreceive a message. Receive Thisactivityusedtoreceive amessage fromthe partnerlink. Reply Thisactivityallowsthe processtosenda message inreplytoa message thatwas receivedthroughareceive activity.
  • 14. 14 Rethrow Thisactivityenablesyoutorethrow a faultoriginallycapturedbythe immediatelyenclosingfaulthandler. Scope Thisactivityconsistsof a collectionof nestedactivitiesthatcanhave theirown local variables,faulthandlers,compensationhandlers,andsoon.A scope activityisanalogoustoa { } blockin a programminglanguage Switch Usedto performconditional processing. Terminate A terminate activityenablesyoutoendthe tasksof an activity(forexample,the faulthandlingtasksina catch branch) Throw Thisactivitygeneratesafaultfrominside the businessprocessandthrowsthe fault. Transform Thisactivityenablesyoutocreate a transformationthatmapssource elements to targetelements.Transformactivitiesgeneratedthe XSLTfile. Wait Thisactivityallowsaprocessto specifyadelayfora certainperiod While Thisactivitysupportsrepeatedperformance of aspecifiediterativeactivity 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 Question: What is WSDL ? Answer : WSDL stands for Web Services Description Language WSDL is a document written in XML. The document describes a Web service. It specifies the location of the service and the operations (or methods) the service exposes. Question: Explain elements/tags of WSDL ? Answer : types A container for abstract type definitions defined using XML Schema message A definition of an abstract message that may consist of multiple parts, each part may be of a different type portType An abstract set of operations supported by one or more endpoints (commonly known as an interface); operations are defined by an exchange of messages binding A concrete protocol and data format specification for a particular portType service
  • 15. 15 A collection of related endpoints, where an endpoint is defined as a combination of a binding and an address (URI) Question: Difference between Abstract and Concrete WSDL ? Answer : Abstract WSDL contains only messages and operations. Abstract WSDL is used by SOAP Server. Where as concrete WSDL contains messages, operations and transport specific information (JMS or Http). This is used by SOAP client. Question : What is SOAP ? Answer : SOAP is a simple XML-based protocol to let applications exchange information over HTTP. Or more simply: SOAP is a protocol for accessing a Web Service. Question : What is XML Schema ? Answer : An XML Schema describes the structure of an XML document. Question : Difference between Include and Import in context to XML schema ? Answer : The fundamental difference between include and import is that you must use import to refer to declarations or definitions that are in a different target namespace and you must use include to refer to declarations or definitions that are (or will be) in the same target namespace. Question : What is targetNamespace's function? Answer : <schema xmlns="http://www.w3.org/2001/SchemaXML targetNamespace="http:/ /www.example.com/name" xmlns:target="http://www.example.com/nam e"> The targetNamespace declares a namespace for other xml and xsd documents to refer to this schema. The target prefix in this case refers to the same namespace and you would use it within this schema definition to reference other elements, attributes, types, etc. also defined in this same schema definition. Question : How to refer another XSL from main XSL file ? Answer : The <xsl:import> element is a top-level element that is used to import the contents of one style sheet into another. Note: This element must appear as the first child node of <xsl:stylesheet> or <xsl:transform>. Syntax: <xsl:import href="URI"/> Question: Why we use Call-template inside XSL ? Answer : Call-template works similar to the apply-template element in XSLT. Both attach a template to specific XML data. This provides formatting instructions for the XML. The main difference between the two processes is the call function only works with a named template. You must establish a 'name' attribute for the template in order to call it up to format a document.
  • 16. 16 <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> < xsl:call-template name="myTemplate"> < !-- Content: xsl --> < /xsl:call-template> < stylesheet> Question: Difference between XA & Non-XA transaction ? Answer: Non-XA (Local Transaction): It involves only one resource. When you use Non-XA transaction then you can’t involve multiple resources (different databases, Queues, application servers etc), you can rollback or commit transaction for only one resource. There is not transaction manager for this transaction as we are dealing with only one resource at a time. XA (Global Transaction): It involves more than one resource (different databases, queues, application servers) all participate in one transaction. It uses two-phase commit to ensure that all resources either all commit or rollback any particular transaction. When you have scenario like you need to connect to two different databases, JMS Queue and application server, in this case you will use XA transaction that means all resource participate in one transaction only. Question: What is inline schema ? Answer: Inline schemas are XML schema definitions included inside XML instance documents. Like external schema documents, inline schemas can be used to validate that the instance matches the schema constraints. Question: what is the use of Pick Activity? Answer: This activity waits for the occurrence of one event in a set of events and performs the activity associated with that event. The occurrence of the events is often mutually exclusive (the process either receives an acceptance or rejection message, but not both). If multiple events occur, the selection of the activity to perform depends on which event occurred first. If the events occur nearly simultaneously, there is a race and the choice of activity to be performed is dependent on both timing and implementation. Question: Design patterns in SOA ? Question: Difference between Synchronous Process and Asynchronous Process ? Question: Use of Config Plans? 1. Is Oracle SOA same as Oracle Fusion Middleware A) No because Soa is one of the part in Fusion middleware and soa behaves like user interface where as Fusion is big platform
  • 17. 17 2. What is SOA Governance A) It means that soa is an service oriented Architecture and for building business applications as a set of loosely coupling components integrated with business services. Soa is an open standard and technology based that means open standard is xml based protocol including wsdl and web service based Architecture.SOA Governance has some activities , components and services…etc B) SOA REGISTRY,SOA POLICY,SOA TESTING. 3. How to increase performance increase in bpel (DB Adapter/file adapter)? A) For getting better performance we use performance tuning.Performance tuning is based on BPEL Levels ,server level and application level. if we put check point in the bpel process level then the performance of application will decrease or the process of the speed reduces.(check point means it stops the next incoming messages until the timer gets expired.) 4. Predefined errors in BPEL? A) The Predefined errors are selection failure , conflicting receive, conflicting request , join failure , forced termination , invalid reply , binding fault , remote fault. 5. Is it possible to use MS SQL Server as dehydration store with SOA Suite?if yes how? A) 6. What are the various elements in WSDL A) < definitions > <types> <message> <port types> <bindings> <services> Abstract: Invoke the web service Concreate: development & design phase endpoint uri. 7. What is structure of SOAP message A) Soap can carry the data from source to destination and it is a simple xml based protocol to exchange the information b/w application over http SOAP message is an ordinary xml document containing i) An envelope element identifies the xml document as a soap message ii) A header element contains header information iii) A body element contains call and response information iv) A fault element contains error and status information v) The element contains actual soap message intended for the ultimate end point of message 8. Can I call an asynchronous process from a synchronous. Are their any limitations (how much time is permissible for async process to return)? A) Yes we can call Async to sync and it is one of the good design for bpel and this process is called as asynchronous invocation process and no time limitations are permissible 9. How to ensure that parallel flows implemented through Flow activity are 'really' parallel? A)We have to check whether the non blocking invoke is set to be true or false. Non blocking invoke property is available in while using invoke-> partner link->nonblockingproperty_>set the value.
  • 18. 18 10. How to develop a web service bottom up? A) 11. How to return a fault from BPEL process. Do I need to change the WSDL. Do I need to do it manually? A) Using throw activity we can return a fault from bpel processes and we need to create a fault element in XSD and we need to create fault message of our xsd element and need to change in bpel level 12. How to add a specific catch handler for binding fault A) we will use catch handler block and we will add this catch handler at scope level 13. How to add a specific catch handler for timeout A) for mentioning the time out ,we will use scope activity and will add this catch handler at scope level 14. How to use sensors A) we can send or apply the sensors to BAM , JMS Queue and Topic .Sensors are mainly used in BAM to know the description or inner details of any object.there are 3 different types B) Activities,Variables and elements. C) Activity sensor is used to monitor the execution of activity with in a bpel process using activity sensors.We can find execution time of invoke activity or how much time it will take to complete an activity. D) Variable Sensor:It is used to monitor the runtime values of variables in a bpel process E) Fault Sensor:used to monitor the Bpel Faults. 15. How to use BPEL properties to externalize constants in BPEL processes? A) 16. Is it possible to set a timeout when calling a synchronous process? A) Yes it is possible by using scope block we will set a timeout when calling a synchronous process 17. Is it possible to timeout a asynchronous process A) Yes it is possible by using scope block we will set a timeout when calling a Asynchronous process 18. What are the various interaction patterns that can be implemented A) sync and Async Oneway based on wsdl based on events empty async timeout sync timeout. 19. Is it possible to escalate a notification during human task? A)Yes we can escalate a notification .In human Task we have deadlines ,in that we can escalate a notification to whom ever you want. 20. What are the various options of calling Java code from BPEL processes? A)we use java embedded activity option to call java c ode from BPEL.We have java class methodology to call java class or java code from bpel.
  • 19. 19 21. What are the various options available for scheduling a BPEL process? A)We have some unit testing (deployment)process scheduling bpel.We have some SCA(components,activities and some templates)to schedule our bpel process. 22. How to call BPEL from java? A) If you are suppose to call bpel from java if our bpel is webservice (has to be in running mode) 23. How to call BPEL from PLSQL A) if a service is web service we can call any bpel to plsql or vice versa. 24. How to call BPEL from Excel A) By using File adapters we read any kind of files. 25. How to use business rules in BPEL process? A) Using business rules component from service component palette. In business rules 26. How to delete a file on a FTP server through BPEL A ) Should specify the JNDI name in FTP server .The deployment descriptor for deployed instance of the ftp adapter must associate with jndi name with a set of configuration properties needed by the ftp adapter to access the ftp server at run time.In this you have to check delete file option and thus we can delete file from FTP server through bpel. 27. How to use In-memory, File based and AQ-based JMS A) 28. How to use Apps adapter to call a concurrent program A) 29. How to use content based and header based routing? A) Content Based Routing: A routing service determines how the message gets from one point to another with in the oracle.as defined the routing rules against XML msgs. As we can define rules to route msgs based on the msg content.So this is known as content based routing. When we configure content rules we hve to specify whether a filter expression is applied.It specifies that the contents of msg be analysed before any service invoked. Header Based Routing: 30. How to change the filename when writing a file through adapter A) 31. What is DVM A)Domain Value Map Applications that you want to integrate using Oracle BPEL or Oracle ESB are likely use different values to represent the same information. For example, one application might represent a state with the long name (CaliforniA) while another application may represent the state with an abbreviation (CA). A domain-value map enables you to associate values from one application with values from another. 33. How to do error handling in ESB. Is error handling different across synchronous and asynchronous ESBs? A)Error handling is possible with ESb but it is difficult in ESB to handle the errors or bugs.
  • 20. 20 34. What happens if an adapter rejects a file or a message when reading it. How to retrieve this message? A)if an adapter rejects a file or a message then it will automatically displayed in rejected messages folder. 35. What is AIA. Why is it such a cool idea...why is it such a hot skill!? A)Application integration Architecture 36. How to set log levels for performing detailed debugging? A) By selecting Logging tab in advance options. 37. How to see logs in enterprise manager? A) 38. What is meant by logfile rotation? A) 40. If a file having huge data (more than 10 mb) how to send this data? A) If a file has huge data ,the data should be split into number of messages and send. 41. How to set timeout error? A) 42. What is the difference between database adapter and oracle apps adapter? A) 43. What is diff between BPEL adapters and ESB adapters? A) 44. Diff between BPEL and ESB A) BPEL: Bpel is heavy weight product Bpel installation wizard takes 500mb If process centric bpel is right choice Very good for orchestration Its performance is slower Bpel has extra features like Work flow,Email notification. Every component in sca can be deployed in Single console ESB: Light weight product It takes 270 mb space Performance speed is faster Only routing transformations are possible, Data centric esb is right choice. 45. Benefits of ESB? A) ESB support multibinding protocol includes http,soap,jms server,jca & java for generating a reliable msgs for delivering Sync and async. ESB moves the data among multiple end points both with in and out side the enterprises. It can transform heavy data also. Connectivity. Document transformations Content based and Header based routing
  • 21. 21 46. Explain diff types of bindings? A) Soap bindings, http bindings and jms bindings 47. Diff between physical path and logical path in file adapter? and how to set in bpel.xml? A) The Diff between physical path and logical path in file adapter is that in physical path the deployment and development is done In the same environment and in logical path they both are done in different environments. 48. what are the activities you are used in syn process and asyn process? A) for sync process we will use receive and reply, assign or transform for Async process we will use receive and callback, assign or transform 49. Explain about pick activity where we use this? A)It allows you to block and wait for suitable messages to arrive or for a timeout to go out. When one of the triggers occur the associate activity is performed and a pick completes. Pick contains On Message and On Alarm When we call a third party async service we use pick 50. Explain XSLT,XML,XSD,WSDL,XQUERY ? A) XSLT: Extensible markup Language transformations In this XSLT we convert one extension to another extension. XML: Extensible markup language XML is mainly used for storing the data but not showing the data. XML is self descriptive language In XML own tags can be defined. XML can be written in 2 types DTD & XSD DTD:Data type definition This describes the structure of the XML document XSD:XML Schema defintion This XSD (Schema) is in turn divided in to 2 types. Valid XML Well Formed XML Valid XML (DTD+well formed XML) Well formed XML (Valid syntax) XSD: Extensible schema definition XSD:XML Schema defintion This XSD (Schema) is in turn divided in to 2 types. Valid XML Well Formed XML Valid XML (DTD+well formed XML) Well formed XML (Valid syntax) WSDL: Web service description language. There are two types of wsdl: Abstract wsdl:which invokes a webservice Concreate wsdl: where design and deployment is done. WSDl elements:
  • 22. 22 Types Messages Porttypes Bindings Hostname Partner links XQUERY:Xquery is otherwiseknown as Xpath which is defined by / 51. how to define the rules in bpel? A: we will define the rules in rules repository and this repository will be available in business rules. 52. How to identify weather the webservice id syn or asyn? A) 53. Diff between bpel webservice and other webservices? A) 54. How to generate SOAP bindings in BPEL? A) After deploying our application would be in server then soap bindings will be generated in bpel 55. Explain about MCF Properties? A) 57. What are differences between synchronous and asynchronous process? A) syn process will give immediate output and show in the display page where as Asyn also will give output but not show in the display page. 58. Why we will use the partition? A) the partition will be used to reduce the burden for the server and easy to identify the deployed application which we deployed into server 59. How many types of variables are there? A)Simple variable(pre defined variable) Message Element 60. Types of WSDL? A) Concrete wsdl and Abstract wsdl Concrete wsdl is for invoke the web service Abstract wsdl is for development and design pattern 61. What is end point URI? A) an end point URI means uniform resource identifier and it refers that 62. What is domain? A) 63. How can we write web services our own?(how to create dynamic web services) A) 64. What is interface? Types of interface? A) 65. Why we use metadata schema? A)
  • 23. 23 66. What is one-way & two-way process? A) 67. What is deployment plan? A) 68. What are the configuration files in adapters? A) 69. What is use of OESB/ESB/Mediator/OSB/ALSB? A) 70. What are the operations in WSDL? A) 71. How can do the customization in adapters? Are there any changes in XML files? A) 72. What is work list application? A) 73. What are the dehydration storage tables? A) 74. What is automated roll-back & manual Roll-back? A)If we use Throw activity explicitily then automatically it rollbacks. B)<throw faultname=”rollback”> C)For manual rollback invoke a partner link that rollbacks a JTA transaction.Suppose in a DB adater ,an error thrown from the database then it causes the JTA Transaction to roll back. 75. What is inline schema? A) 76. What is success reply and failure reply? A) 77. What is difference between imports & include? A)Import : if we have different name spaces Include: if we have same namespaces. 78. What is difference between services & references? A)Services are which are self dependent.service is an entry point into the composite from external world. References are those which are dependent on other services.References are those which are given to the external world. 79. What of process of choreography? A) 80. Which file could deploy in SOA 10g? A) jar files 81. Can we use Jdeveloper in OSB? Ans:- No if you want to develop that feature you need to deploy in eclipse 82. What RMI & RPC? A) Remote Method invocation B) Remote Procedural Call 83. When we use correlation for synchronous & asynchronous services?
  • 24. 24 A) If you get some request, scope will provide the link for same earlier request that is called correlation 84. What is XSL & XSLT, Differ those? A)extensiable schema language and extensiable schema language transformation. XSL is simply a language where as xslt is which converts from one format to another. 85. What id ODI? A) oracle data integration 86. What is idempotent? A)It is one of the activity which is used for retrieving the saved one.Apart from breakpoint activities all are idempotent activities. (Assign,invoke) 87. What is WSDL which one we give to client? A)concrete wsdl - Q)What is non idempotent activity? It is an activity which can be happened only once.Break point activities are NON-Idempotent Activities. 88. What is JTA? A) 89. After consume the data from queue or topic is there any packets? A) 90. Can we use two pick/ receive activities or one pick & receive? A) No only one pick and one receive activity can be used 91. Why we call ESB in 10g as mediator in 11g? A) the esb functionality has been moved to mediator in11g. 92. Can we use customize XSLT? If yes how? A) yes .why bcz we will use the existing mapper file to customize 93. Is it compilation done by ant-script? How? A) Yes we will set JAVA path in environment variables for deploying the application through ANT 94. What are transaction boundaries? A)If we create transaction with in the transaction then it creates some boundaries and such boundaries are known as transaction boundaries. Oracle Bpel server always executes request with in a JTA transaction.If JTA transaction already present with the context then the BPEL process uses this transaction .Otherwise it will create a new JTA transaction. A client initiate the JTA transaction if Transaction=participation property is specified in the message header. The bpel transaction analyst itself incoming or parent JTA transaction. If the property is not set a new transaction is created ,i.e the transaction is default. Eg : to invoke synchronous 95. What is difference between file adapter & FTP Adapter? A) File adapter contains read &write along with synchronous read B) Ftp contains get file & put file, List of files.
  • 25. 25 96. What is OAGIS?(Open applications group integration specification) A) 97. Describe about the SOAP? A)Soap is a simple xml based protocol to exchange the information b/w application over http 98. From we can retrieve the schema? A)Bam schema B)MDS schema C)User interface schema D)Soa infrastructure schema Mainly schema is retrieved from database. 99. What is cube_instance? A) 100. What is cluster based deployment? A) 101. Can we use throw called without catch & catch all? A) yes we can use 102. What is path of deployment file? A) 103. In which folder .jar files created? A) deploy folder 104. What is file debatching? When a file contains multiple messages we can select publish messages in specific number of batches and is known as DE-BATCHING.During de batching the file reads the messages from where it left the previous where it left off in order to avoid conflicts 105. What is chunk file? 106. Can we give time for synchronous & asynchronous? By which activity? A)wait 107. How much size can file accept through file adapter? If it extends what happened? 108. How can find particular fault message in catch all activity? A)By using catch activity. 109. How can we associate faultpolicy.xml with fault binding.xml? 110. What is the best process A) sync-Async 111. B) Asyncsync. A) in some cases syn-Asyn and some cases asnc-syn 112. What are the different design patterns in SOA? 113. What are different types of installations in SOA Suite 10g & 11g? A) custom and typical(Basic and advanced) 114. What is the significance of target namespace in a WSDL? A) it is there to avoid the naming specifications
  • 26. 26 115. What are different message exchange patterns in BPEL? A) send Asyn ii) fire and forget iii) one way invocation 116. Flow activity is sequential or parallel? Flow activity is sequential when a property called NONBLOCKINGINVOKEPROPERTY is false.If it is set to be TRUE then it works as a parallel. 117. What is “nonblockinginvokeall” property? 118. What is DSP max thread & receiver thread properties? Why they are important? 119. What is error handling framework? 120. What is FlowN activity & how does it beverages the flow activity? A) If you come to know the number of branches to be executed in development time then it is FLOW. If you don’t know the number of branches are to be assigned before the design then values canbe assigned at runtime then it is FLOW-N 121. How do we handle transactions in BPEL? A) parallelly 122. What are transient and durable BPEL? A)Transient :The process that does not have any breakpoints(non idempotent activities and idempotent activities) Durable: The process that does have one or more breakpoints(non idempotent activities and idempotent activities) Note: Invoke activity is defaultly a idempotent but manually we can set as non idempotent. 123. What is XA data source & how it differs from non-XA data source? A) XA) Transactional Non XA) Non Transactional XA) Transactional----XA datasource is the property value of JNDI datasource in JDBC. 124. What are MFC properties? 125. What all operations can be performed by file adapter? A) read, write, list 126. What is synchronous file read operation? Is it in bound or out Bound operation? A) inbound operation 127. What all errors handled by BPEL process? A) system errors 128. Why do we need JMS queue? 129. What is the benefit of JMS queue using over AQ queue? A) In JMS we store the messages in Queue B) 130. What is get preference property? &how do we set it and what advantage it provides?
  • 27. 27 131. How can we make partner link dynamically? 132. How do we resubmit faulted process? A) Through the recovery option.Once fault occurs we have recovery option to recover and maintain the flow 133. Types of deployment? A) Hot deployment and cold deployment 134. How do we embed or use of JAVA code in BPEL? 135. When do we use ESB over BPEL? A) When large amount of data is transformed we use ESB. B) Dynamic Transformations can be done by ESB than BPEL C) ESB helps to increase flexibility ,reusability and over all responsibilities. 136. What is out of box error handling in ESB? 137. How can we get instance ID in ESB? A) In ESB console we can see instance ID B) When our application is deployed in the ESB console then as instance Is created. 138. How can we make routing in ESB dynamic? ESB provides standard based data mapper to map the different applications data models. In Esb routing service contains transformations , filtering options. Using this ESB services we can create routings dynamically. In Esb High transformations & mappings are very high.ESB over view. 139. What is domain value mapping? Applications that you want to integrate using Oracle BPEL or Oracle ESB are likely use different values to represent the same information. For example, one application might represent a state with the long name (CaliforniA) while another application may represent the state with an abbreviation (CA). A domain-value map enables you to associate values from one application with values from another. 140. Explain about the buckets? A) Bucket set having range of values 141. How to create dictionary? Dictionary is having Rulesets & Bucket sets. In B-Rules we need to configure facts, rules, and bucket set. All these collectively will be saved in dictionary. And dictionary would be created. Dictionary is also known as rules repository.In theses repository we will create b-rules & conditions. 142. Explain about JNDI connections? JNDI means Java Naming Directory Interface .While configuring adapters in the run time we give jndi name in db or jms. Jndi binds a object with a name. It looks for that objects through particular name Based on that object jndi will works. 143. How to process the variable from one instance to another instance? 144. What is signal & receive signal? A) to identify the unique service number
  • 28. 28 145. Why do we need to have messages in WSDL, aren't operations and types enough to describe the parameters for a web service? A) yes we need the messages in wsdl because in wsdl we have input and output messages and that msg would refer to bpel.As operations and types are alone not enough.Actually the msgs are linked with XSD elements. So msgs are mandatory in wsdl. 146.Routings are of 2 types? Content based routing Header Based routing 147.what are dehydration boundaries? Invoke Pick(on branch) Receive Wait Checkpoint 147.What are the break point activities? A)wait ,pick, receive It is a activity in which oracle bpel server must wait for next incoming messages to wait until timer gets expired. 148.What are transaction activities? Compensate Receive Reply Invoke 149.How to rollback in bpel apart from using compensate handler? We need to Set property Throwfaultname=Rollback 150)Types of adapters? Technology adapters like file,jms,db adapters Application adapters like sap,Peoplesoft,Siebel CRM. 151)diff b/w Soa and other services? Soa is technology independent,loosely coupled,Reusabulity. Other services :It depends upon their functionality. 152)Installation types? 2 types; Basic type:Embedded DB that acts as a dehydration Advanced type: which provide an external db 153)What is re hydration? Whenever any message or timer expires then bpel server locates and loads the particular bpel process instances and loaded into memory.This process is known as rehydration.
  • 29. 29 Oracle Service Bus Oracle Service Bus Interview Questions *During the OSB session we discussed about interview related Questions. These are a few Questions which can be asked during interview related to OSB Q) What is Proxy Service ? A) 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. Q) What is Business Service? A) It connects to the EIS layer. Business services are Oracle Service Bus definitions of the enterprise services that exchange messages during business processes. Q) What is the EAI architecture OSB follows ? A) OSB follows the BUS architecture in EAI. Q) What does it mean by VETRO concept? A) VETRO stands for V – Virtualisation E – Enrichment T – Transform R – Route O – Operate Q) Can we expose any Business Service to external clients or subscribers? A) No, we can not expose Business Services to external clients or subscribers. We need Proxy Services to expose to external world. Q) Can we have Proxy Services without Business Services? A) Yes we can have Proxy Services without Business Services , but that will be just a dummy service. EIS layer can not be connected using that Proxy Service. Q) What is the message flow in Proxy Services ? A) 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, Actions etc. Q) What are stages ? A) Stages are OSB Message Flow component to contain the actions. Q) How we can connect to Database from OSB? A) We need to first create one JCA based DB adapter to connect to the database. Then we need to create that JCA based Business Service. We need to call that Business Service to perform database operations. Q) Is there any other way to connect to Database without using JCA adapters? A) Yes we can use XQuery execute-sql() function to connect to database. But it is better to use JCA adapters. Q) How we can achieve parallel processing in OSB? A) SPLIT JOINS are meant for parallel processing. So we need to implement Split – Join resources to achieve parallel processing. Q) What are the transformation resources available in OSB? A) In OSB we can use XQuery or XSLT for transforming messages. Q) How to poll file in OSB? A) The proxy service should be using file transport, and also define the required components like File Mask,Polling Interval, Read Limit, Post Read Action etc. Q) Can we achieve REST implementation in OSB? A) Yes we can achieve REST service implementation in OSB. It can be implemented using Branch Nodes. Q) What is Pipeline Error Handler?
  • 30. 30 A) Pipeline Error Handlers are used to handle the errors occurred in Request or Response Pipleline. Q) How can you end a Proxy flow without using if then else logic ? A) You have to use Reply (with Success)action to end the Proxy Flow where you want. Q) For a JMS Queue Subscriber Proxy Service how can you ensure that the JMS Message is retried if an error occurs during processing? A) One XA Connection Factory should be created to access that JMS queue and that Connection Factory should be used in the URL. Q)How can you jump control from one stage to next stage without using if then else logic? A) You have to use Skip action at the end of the stage. 16. In a distributed OSB system, if you have been asked to create 2 separate queues residing on 2 MS, how you will implement this? Answer is : UDQ (User Distributed Queue) is a concept to implement on Cluster environment. 17. What are the other standard ways of doing message transformation apart from XQuery/XSLT? Ans: using Assing activity in SOA11g 5. where a source system puts a flat file into a location and the data has to be inserted to RDBMS. Basically to design a solution for this requirement with OSB and without OSB (using SOA suite components). solution : @ SOA:at service section side using file adapter with get operation we will pick file from our local system ,Route this file threw Mediator to Db Adapter with Insert operation. @ OSB:A) Proxy service:Using FILE Protocol we will pick file from local system b)We need to develope a composite of insert db Adapter at Jdev level & import those .xsd,.wsdl,.jca files into eclipse environment. then we generate Business service in .jca file. It may be helpful. OSB 11g - Throttling Throttling is termed as " regulate the flow". Oracle Service Bus has throttling feature and by using that feature we can control number of requests sent to target service. But why we need OSB throttling ? Every system has its own capacity means it can process only certain number of message at one time, if we try to send messages beyond its capacity then that system's performance can degrade or in worst case it can crash. So to avoid all this we can use OSB throttling feature to send limited messages to target system. Oracle OSB Interview Questions and Answers:- Configuring Proxy Services and Business Services:- Oracle Service Bus proxy services and business services provide the means for managing services, transforming messages, and routing messages through the enterprise. You can create and configure proxy services and business services using either the run-time environment (Oracle Service Bus Console) or the development environment
  • 31. 31 (Eclipse with Oracle Service Bus plug-ins). You can base proxy services or business services on existing Web Services Description Language (WSDL) resources, including those imported from a UDDI registry such as the Oracle Service Registry, and then further configure them in the console or the plug-in. 1. What is a Proxy Service? Oracle Service Bus proxy services are definitions of intermediary Web services that Oracle Service Bus implements and hosts locally. Oracle Service Bus uses proxy services to route messages between business services (such as enterprise Web services and databases) and service clients (such as presentation applications or other business services). A proxy service configuration includes its interface, transport settings, security settings, and a message flow definition. The message flow definition defines the logic that determines how messages are handled as they flow through the proxy service. If a proxy service is based on a WSDL document, the configuration also includes a WSDL port or a WSDL binding. What is Oracle Service Bus Business Services? Oracle Service Bus business services are definitions of enterprise Web services to which Oracle Service Bus is a client. Those external Web services are implemented in and hosted by external systems, so Oracle Service Bus must know what to invoke, how to invoke it, and what to expect as a result. Oracle Service Bus business services model those interfaces so that Oracle Service Bus can invoke the external services. A business service configuration includes its interface, transport settings, and security settings. (It does not include a message flow definition.) If the business service is based on a WSDL, the configuration also includes a WSDL port or a WSDL binding. 2. What are the different types of Pipelines? Request and Response Pipeline. What is a Pipeline? Pipelines are one-way processing paths that include no branching. A pipeline is a named sequence of stages containing actions, representing a non-branching oneway processing path. It is used to specify the message flow for service requests and responses. A stage is a user-configured processing step. Messages fed into the pipelines are accompanied by a set of message context variables that contain the message contents. They can be accessed or modified by actions in the pipeline stages. 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. What is a Message Flow?
  • 32. 32 In Oracle Service Bus, a message flow is the implementation of a proxy service. You configure the 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. 3. What is a Publish Table? Use a publish table action to publish a message to Zero or more statically specified services. 4. What is a Publish Node? We Use a publish action to identify a statically specified target service for a message and to configure how the message is packaged and sent to that service. WSDL Overview:- A WSDL document describes a service, its location, its operations, and the way in which clients can communicate with it. This section provides a very brief introduction to WSDL, to provide context for discussing Oracle Service Bus features. Table 35-1 summarizes the main elements used to define WSDL services. Table 35-1 High-level WSDL Elements Element Description <types> Type definitions for message content. <message> Abstract definition of the data being exchanged. A message consists of parts, which describe the logical, abstract content of the message. <portType> Abstract collection of operations supported by the service. <operation> Abstract description of an action supported by the service. <binding> Concrete protocol and data format specification for a port type. <port> A single endpoint, consisting of a network address and a binding. <service> Collection of related ports, or endpoints. WSDL specifies SOAP, HTTP, MIME, and Oracle Service Bus-specific binding extensions, which extend the WSDL binding mechanism to support protocol-specific or message format-specific features. Types:- The <types> element is a container for data type definitions. It uses a type system, such as XML Schema (XSD), to define the vocabulary of messages handled by this service. For example, a service that provides stock quotes might define an XML vocabulary, with the terms TradePriceRequest and TradePrice, as shown in Example 35-1. Example 35-1 WSDL Types Example <types> <schema targetNamespace="http://example.com/stockquote.xsd" xmlns="http://www.w3.org/2001/XMLSchema"> <element name="TradePriceRequest"> <complexType> <all> <element name="tickerSymbol" type="string"/>
  • 33. 33 </all> </complexType> </element> <element name="TradePrice"> <complexType> <all> <element name="price" type="float"/> </all> </complexType> </element> </schema> </types> Message:- The <message> element provides an abstract, typed definition of the data being communicated. A message consists of parts, each of which describes one logical, abstract unit of the message. A WSDL can define one or more messages, each of which may have one or more parts. For example, the WSDL fragment in Example 35-2 defines four message types, sellerInfoMessage, buyerInfoMessage, response, and negotiationMessage, each of which has one or more parts. Example 35-2 WSDL Message Example <message name="sellerInfoMessage"> <part name="inventoryItem" type="xsd:string"/> <part name="askingPrice" type="xsd:integer"/> </message> <message name="buyerInfoMessage"> <part name="item" type="xsd:string"/> <part name="offer" type="xsd:integer"/> </message> <message name="response"> <part name="result" type="xsd:string"/> </message> <message name="negotiationMessage"> <part name="item" type="xsd:string"/> <part name="price" type="xsd:integer"/> <part name="outcome" type="xsd:string"/> </message> Port Type:- The <portType> element defines a set of operations supported by one or more endpoints (which are defined in the <port> element). The port type provides the public interface for the operations provided by the service. Each operation is defined in an <operation> element, each of which is an abstract description of an action supported by the service. For example, the fragment in Example 35-3 defines a port type with one operation, GetLastTradePrice, which can handle an input message, GetLastTradePriceInput, and
  • 34. 34 an output message, GetLastTradePriceOuput. The concrete descriptions of these messages are defined in the WSDL binding, as shown in the <soap:operation>subelement in Example 35-4. Example:- WSDL Port Type and Operation Example <portType name="StockQuotePortType"> <operation name="GetLastTradePrice"> <input message="tns:GetLastTradePriceInput"/> <output message="tns:GetLastTradePriceOutput"/> </operation> </portType> Binding:- The <binding> element specifies a concrete data format specification and a concrete transport protocol for a port type. The fragment in Example 35-4 specifies the binding for the StockQuotePortType port type, which is provided as the value for the type attribute. The <soap:binding>subelement signifies that the binding is bound to the SOAP protocol format. In that subelement, the style attribute specifies that the data format is SOAP document style, and the transport attribute specifies that the transport protocol is HTTP. Example 35-4 WSDL Binding Example <binding name="StockQuoteSoapBinding" type="tns:StockQuotePortType"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <operation name="GetLastTradePrice"> <soap:operation soapAction="http://example.com/GetLastTradePrice"/> <input> <soap:body use="literal"/> </input> <output> <soap:body use="literal"/> </output> </operation> </binding> Service and Port:- The <service> element defines a collection of related endpoints, each of which is defined in a child <port> element. A port is defined as a binding associated with a network address. For example, the fragment shown in Example 35-5 defines two ports, StockQuotePort, and StockQuotePortUK. They both use the same binding,tns:StockQuoteSoapBinding, (which is concretely defined in <binding>) but have different network addresses: http://example.com/stockquote vs.http://example.uk/stockquote. These are alternative ports available for this service. Example 35-5 WSDL service and port Example
  • 35. 35 <service name="StockQuoteService"> <port name="StockQuotePort" binding="tns:StockQuoteSoapBinding"> <soap:address location="http://example.com:9999/stockquote"/> </port> <port name="StockQuotePortUK" binding="tns:StockQuoteSoapBinding"> <soap:address location="http://example.uk:9999/stockquote"/> </port> </service> Question: To connect to source system which service we will use? Answer: we will use Proxy service to connect to Source system. Question: To connect to target system which service we will use? Answer: we will use Business service to connect to target system. Question: What is Proxy Service? Answer: Proxy services are OSB definitions of intermediary Web services that OSB implements locally on Oracle WebLogic Server It is a service in OSB which is exposed to source system or application. A proxy service can route messages to multiple business services. 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 Question: What is Business Service? Answer: Business services are Oracle Service Bus definitions of the enterprise services that exchange messages during business processes. It is a service in OSB which is used to connect to target system. Question: What is Message Flow? Answer: A message flow is the implementation of a proxy service. You configure the 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.(or) Message flow is there in proxy service, We do all types of transformation, routing and other processing message flow only. Question:-What is Start node? Answer: Every message flow begins with a start node. All messages enter the message flow through the start node, and all response messages are returned to the client through the start node. There is nothing to configure in a start node.
  • 36. 36 Question: What is Pipeline? Answer: 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. Each pipeline consists of a sequence of stages. Question: What is Stage? Answer: Stage is a user-configured processing step. Messages fed into the pipelines are accompanied by a set of message context variables that contain the message contents. They can be accessed or modified by actions in the pipeline stages. Question: What is Branch node? Answer: • A branch node allows processing to proceed along exactly one of several possible paths. • Two kinds of branching are supported in message flows message flow one is operational branch and conditional branch • Operational branching is supported for WSDL-based services, where the branching is based on operations defined in the WSDL. • You must use operational branching when a proxy service is based on a WSDL with multiple operations. • Conditional branching is supported for conditions defined in an X-Path-based switch table. • Use conditional branching to branch based on a specified condition. • Conditional branching is driven by a lookup table with each branch tagged with simple, unique string values. • At run time, the variable or the expression is evaluated, and the resulting value is used to determine which branch to follow. • If no branch matches the value, the default branch is followed. • operational branching, configured in an operational branch node, and • conditional branching, configured in a conditional branch node.
  • 37. 37 Question: What is Root node? Answer: A route node performs request/response communication with another service. • It represents the boundary between request and response processing for the proxy service. • When the route node dispatches a request message, the request processing is considered complete. • The route node supports conditional routing as well as request and response transformations. Because a route node represents the boundary between request and response processing, it cannot have any descendants in the message flow Question: Do we have global variable in OSB (Can we access variable which is defined in proxy service message flow from other proxy service message flow)? Answer: No, we can't access variable in proxy service message flow from other proxy service message flow. Question: Can we use direct bindings to call SOA composites? Answer: Yes, we can direct binding-bindings to call SOA composites along with SOAP bindings. Question: Where the file will go if there is any error while polling the file? Answer: During configuring file or ftp protocol in OSB, we need to specify error directory, so you can see file to that directory if file polling failed. Question: Why we use Split-Joins in OSB? Answer: To do parallel processing. Question: Types of Split-Joins? Answer: Static and dynamic. Question: How to call Java code from OSB? Answer: By using Java callout activity. Question: Can we use more than one route node in message flow? Answer: No, we can't we use more than one route node in proxy service message flow. Question: When we call asynchronous service from OSB then how to get response back from that asynchronous service to OSB? Answer: Design the proxy service which in turn calls business service which in turn calls asynchronous service. In the message flow of this proxy change the message header to below. You need to specify ReplyTo value so that asynchronous service response came to CallSyncCompositeProxy proxy service. <soap-env:Header xmlns:ns1="http://schemas.xmlsoap.org/ws/2003/03/addressing"> <ns1:MessageID>ws:uniqueAddress</ns1:MessageID> <ns1:ReplyTo> <ns1:Address>http://localhost:8011/CallAsyncService/proxyServices/CallSyncCompositeProxy</n s1:Address> </ns1:ReplyTo> </soap-env:Header> Remember ReplyTo address refers to CallSyncCompositeProxy endpoints. For more details refer my below post http://soawork.blogspot.com/2012/12/call-asynchronous-webservice-from-osb-over-http.html
  • 38. 38 Question: What is throttling in OSB? Answer: Throttling means we want to process certain messages in one time, then we need to set some parameters in OSB to do the required task. For more details refer my below post http://soawork.blogspot.com/2013/01/throttling-in-osb.html Question: to transform from binary to XML or XML to binary format what we will in OSB? Answer: we use MFL. Question: can we use MDS in OSB? Answer: No, Oracle Service Bus does not support MDS. Question: Can we use DVM’s in Oracle Service Bus? Answer: No, we can’t use DVM’s in Oracle Service Bus. Dynamic Message Transformation:- Oracle Service Bus supports the following capabilities for the transformation or processing of messages: – Validates incoming messages against schemas – Selects a target service or services, based on the message content or message headers – Transforms messages based on the target service – Transforms messages based on XQuery or XSLT – Supports transformations on both XML and MFL messages – Message enrichment – Supports callouts to Web services to gather additional data for transformation (for example, country code, full customer records, and so on) Actions in Stages and Route Nodes:--- • Actions provide instructions for handling messages in pipeline stages, error handler stages, and route nodes. • Based on the context actions are described in 4 different sections: • Communication Actions • Flow Control Actions • Message Processing Actions • Reporting Actions Communication Actions:-- Action Use to… Available in… Dynamicpublish Publishamessage toa service specifiedbyanX-Queryexpression Pipeline stage Error handlerstage Route node Publish Identifyastaticallyspecifiedtargetserviceforamessage andto configure howthe message ispackagedandsenttothat service Pipeline stage Error handlerstage Publishtable Publishamessage tozeroor more staticallyspecifiedservices. Switch-styleconditionlogicisusedtodetermine atruntime which Pipeline stage Error handlerstage
  • 39. 39 serviceswill be usedforthe publish  Communication Actions:-- Action Usedto… Available in Routingoptions Modifyanyor all of the followingpropertiesinthe outboundrequest:URI,Qualityof Service,Mode,Retry parameters,Message Priority Pipeline stage Service o Configure asynchronous(blocking) callouttoanOracle Service Bus-registeredproxyorbusinessservice Pipeline stage Error handlerstage Transport headers Setthe headervaluesinmessages Pipeline stage Error handlerstage  Flow Control Actions:- Action Use to... Available in For each Iterate over a sequence of values and execute a block of actions Pipeline stage Error handler stage If..then… Perform an action or set of actions conditionally, based on the Boolean result of an XQuery expression. Pipeline stage Route node Error handler stage Raise error Raise an exception with a specified error code (a string) and description. peline stage Error handler stage Resume Resume message flow after an error is handled by an error handler. This action has no parameters and can only be used in error handlers. Error handler stage  Flow Control Actions:- Action Use to... Available in Reply Specify that an immediate reply be sent to the invoker Pipeline stage Error handler stage Skip Specify that at run time, the execution of this stage is skipped and the processing proceeds to the next stage in the message flow. Pipeline stage Error handler stage
  • 40. 40 Message Processing Actions:-  Reporting Actions:- Alert Generate alerts based on message context in a pipeline, to send to an alert destination Pipeline stage Error handler stage Log Construct a message to be logged and to define a set of attributes with which the message is logged Pipeline stage Error handler stage Report Enable message reporting for a proxy service. Pipeline stage Error handler stage  Message Brokering:- Service providers and clients exchange messages with an intermediary proxy service instead of directly with each other, eliminating complexities resulting from heterogeneous communication protocols and messaging formats X-Query-based policies or callouts to external services for message routing Routing policies that apply to both point-to-point and one-to-many routing scenarios (publish). For publish, routing policies serve as subscription filters
  • 41. 41 SOA Interview Questions Question: To connect to source system which service we will use? Answer: we will use Proxy service to connect to Source system. Question: To connect to target system which service we will use? Answer: we will use Business service to connect to target system. Question: What is Proxy Service? Answer: It is a service in OSB which is exposed to source system or application. Question: What is Business Service? Answer: It is a service in OSB which is used to connect to target system. Question: What is Message Flow? Answer: Message flow is there in proxy service, We do all types of transformation, routing and other processing message flow only. Question: Do we have global variable in OSB (Can we access variable which is defined in proxy service message flow from other proxy service message flow)? Answer: No, we can't access variable in proxy service message flow from other proxy service message flow. Question: Can we use direct bindings to call SOA composites? Answer: Yes, we can direct binding-bindings to call SOA composites along with SOAP bindings. Question: Where the file will go if there is any error while polling the file ? Answer: During configuring file or ftp protocol in OSB, we need to specify error directory, so you can see file to that directory if file polling failed. Question: Why we use Split-Joins in OSB? Answer: To do parallel processing. Question: Types of Split-Joins? Answer: Static and dynamic.
  • 42. 42 Question: How to call Java code from OSB? Answer: By using Java callout activity. Question: Can we use more than one route node in message flow? Answer: No, we can't we use more than one route node in proxy service message flow. Question: When we call asynchronous service from OSB then how to get response back from that asynchronous service to OSB? Answer: Design the proxy service which in turn calls business service which in turn calls asynchronous service. In the message flow of this proxy change the message header to below. You need to specify ReplyTo value so that asynchronous service response came to CallSyncCompositeProxy proxy service. <soap-env:Header xmlns:ns1="http://schemas.xmlsoap.org/ws/2003/03/addressing"> <ns1:MessageID>ws:uniqueAddress</ns1:MessageID> <ns1:ReplyTo> <ns1:Address>http://localhost:8011/CallAsyncService/proxyServices/CallSyncComposit eProxy</n s1:Address> </ns1:ReplyTo> </soap-env:Header> Remember ReplyTo address refers to CallSyncCompositeProxy endpoints. For more details refer my below post http://soawork.blogspot.com/2012/12/call-asynchronous-webservice-from-osb-over-http.html Question: What is throttling in OSB? Answer: Throttling means we want to process certain messages in one time, then we need to set some parameters in OSB to do the required task. For more details refer my below post http://soawork.blogspot.com/2013/01/throttling-in-osb.html Question: to transform from binary to XML or XML to binary format what we will in OSB? Answer: we use MFL. Question: can we use MDS in OSB? Answer: No, Oracle Service Bus does not support MDS. Question: Can we use DVM’s in Oracle Service Bus? Answer: No, we can’t use DVM’s in Oracle Service Bus. Question: What is “Minimum Age” in File adapter? Answer: This parameter specifies the minimum age of files to be retrieved. This enables a large file to be completely copied into the input directory before it is retrieved for processing. Question: What is trigger file in File adapter? Answer: When we choose “Trigger File” checkbox, file adapter will not poll/read the file/files from specified directory unless it sees trigger file in trigger file directory. Once trigger files is there in the trigger file directory, file adapter will start polling the files.
  • 43. 43 Question: What is Logical path in File adapter? Answer: This parameter specifies the logical input directory to be polled. The parameter is of type String. We provide value of logical path in composite.xml file. Question: How to handle errors when we unable to read/poll a file using file adapter if that file is corrupt? Answer: We need to use File rejection handler to catch these types of error. Question: What is Sync-Read in file adapter? Answer: When we want to read a file in between our BPEL flow then we use this option. Question: Can we read remote files using file adapter? Answer: To read file from remote location we need to use FTP adapter. Question: What is native format? Answer: when we want to read the file as it, means we don’t want to transform file content to XML format then we use native format option. Question: What is OWSM? Answer: OWSM stands for Oracle Web Service Manager. Oracle Web Services Manager offers a comprehensive and easy-to-use solution for policy management and security of service infrastructure. It is a standalone platform for securing and managing access to web services. Question: How do we call secured web service from SOA? Answer: By using OWSM policies. Question: Can we generate custom OWSM policies? Answer: Yes, we can create custom OWSM policies. Question: By how many ways we can add OWSM policy to Web Service? Answer: · Through policy annotations at design time · Via the Administration Console at runtime · Via Fusion Middleware Control or WLST Question: When we call secured web service from SOA, which policy we will use “Client” or “Service”? Answer: When we call secured web service from SOA then we add “Client” policy to reference partner link and when we want to secure our web service then we use “Service” policy. Question: Can we use OWSM with Oracle Service Bus? Answer: Yes, we can access OWSM policies from OSB. Question: Can we attach OWSM policy to multiple composites to secure composites? Answer: yes, we can apply one policy to all composites in one domain using policy sets.
  • 44. 44 Question: what is the scope of Policy Sets or where we can apply Policy sets ? Answer: · Domain — all policy subjects of the specified type in a domain · Application or Partition—all policy subjects of the specified type in an application or SOA partition · Application module or SOA composite—all policy subjects of the specified type in an application module or SOA composite · Service or reference—all policy subjects of the specified type in a SOA service or reference · Port or component—all policy subjects of the specified type in a port or SOA component Question: By how many ways we can handle error/fault in BPEL? Answer: By using Catch blocks & Fault handling framework. Question: Can we use both Catch block & fault handling framework in one BPEL? Answer: Yes, we can have both Catch Block & Fault policies files in one BPEL. Question: Standard Faults in BPEL? Answer: Below is the list of Standard Faults in BPEL. · bindingFault, conflictingReceive, conflictingRequest, correlationViolation · forcedTermination, invalidReply, joinFailure, mismatchedAssignmentFailure · remoteFault, repeatedCompensation, selectionFailure, uninitializedVariable Question: Standard Faults in Mediator? Answer: Mediator has only one standard fault. {http://schemas.oracle.com/mediator/faults}mediatorFault. Question: How to get Fault Trace in CatchAll block? Answer: By using getFaultAsString() function. Question: Can we have custom faults in BPEL? Answer: Yes we can create custom faults in BPEL, these faults are usually called Business Faults and we usually handle it by using specific Catch block. Question: Can we re throw a fault from Catch blocks? Answer: Yes, we can re-throw fault from Catch block. Question: Where we keep fault-policies.xml & fault-binding.xml files? Answer: We can keep these files either local to project or in MDS and in both the cases we have to specify the path in composite.xml file. Question: What is MDS & Why we use MDS in Oracle SOA? Answer: MDS stands for Oracle MetaData Service. It is central repository inside Oracle Fusion Middleware. MDS purpose is to provide centralized store where we can keep, manage & access metadata.
  • 45. 45 Metadata is often defined as data about data, or in other words, piec es of information that describes and gives meaning to other information. Typical examples of metadata used by Oracle Fusion Middleware components are XML files, XSD schema files, XSL transformations, SCA composites, BPEL processes, WSDLs, business rules, Oracle ADF pages, JaveServer Pages (JSP), and Oracle ADF task flows, among others. The same metadata that is used during the design phase of application is used at application runtime through the metadata service layer. This ensures consistency through the lifecycle of the application. Metadata such as XML files or XSD schema files is usually shared among different components. Therefore, it is not only necessary that those resources can be accessed easily and referenced by all the components, but it is also important that they remain consistent; a change in the metadata should be reflected in all the components that are referencing it. Having only one copy of each metadata resource avoids unnecessary redundancy and guarantees that the changes are made in only one place. Question: Types of MDS Repository? Answer: File-Based & DB Based. Question: What is File-Based MDS Repository? Answer: The idea behind file-based repositories is to allow developers to have a light repository available in their local environment that can be easily adapted for development and tests; a file- based repository relieves developers of having to configure and maintain an external database while providing necessary functionality, such as file referencing and customizations. These kinds of repositories are easily modified and maintained, since they define a directory structure similar to any other directory structure inside an operating system. They can be navigated and altered using common shell commands or any kind of visual file explorer application. The file-based repository is configuration is used. Question: What is DB-Based MDS Repository? Answer: Database-based repositories are used in production environments where robustness is needed. These repositories are created using the Repository Creation Utility (RCU) application from Oracle. This utility helps with the creation of a new database schema with its corresponding tables and objects. Repositories can later be registered or deregistered via the Oracle Enterprise Manager Fusion Middleware Control console. Question: Which configuration file store MDS configurations? Answer: The adf-config.xml file is a configuration file that is used to store MDS Configurations. Question: What type of WSDL file we usually keep in MDS? Answer: We usually keep Abstract WSDL’s only in MDS Question: What is WSDL ? Answer : WSDL stands for Web Services Description Language WSDL is a document written in XML. The document describes a Web service. It specifies the location of the service and the operations (or methods) the service exposes.
  • 46. 46 Question: Explain elements/tags of WSDL ? Answer : Element Name Description types A container for abstract type definitions defined using XML Schema message A definition of an abstract message that may consist of multiple parts, each part may be of a different type portType An abstract set of operations supported by one or more endpoints (commonly known as an interface); operations are defined by an exchange of messages binding A concrete protocol and data format specification for a particular portType service A collection of related endpoints, where an endpoint is defined as a combination of a binding and an address (URI) Question: Difference between Abstract and Concrete WSDL ? Answer : Abstract WSDL contains only messages and operations. Abstract WSDL is used by SOAP Server. Where as concrete WSDL contains messages, operations and transport specific information (JMS or Http). This is used by SOAP client. Difference Between Concreate WSDL And Abstract WSDL An abstract WSDL document describes what the web service does, but not how it does it or how to contact it. An abstract WSDL document defines: the operations provided by the web service. the input, output and fault messages used by each operation to communicate with the web service, and their format. A concrete WSDL document adds the information about how the web service communicates and where you can reach it. A concrete WSDL document contains the abstract WSDL definitions, and also defines: the communication protocols and data encodings used by the web service. the port address that must be used to contact the web service.