SOA Admin Interview Questions
Q1) What is MDS & Why we use MDS in Oracle SOA?
- MDS stands for Oracle MetaData Service. It is the central repository inside Oracle Fusion Middleware. MDS purpose is to provide a centralized store where we can keep, manage & access metadata.
- Metadata is often defined as data about data, or in other words, pieces of information that describe 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, JavaServer Pages (JSP), and Oracle ADF task flows, among others.
- The same metadata that is used during the design phase of the 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 are usually shared among different compo Oracle SOA Admins. 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.
Q2) What are the types of MDS Repository?
Ans: File-Based & DB Based.
Q3) Explain About Web service?
- Web service is a type of software system which is used to exchange the data and use information from one machine to another machine through the network. Generally, Web services based on standards such as TCP/IP, HTTP, Java, HTML, and XML.
- Web services are pure XML based which is used for exchange information through the 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 the computer networks.
- You can develop Java-based web services on Solaris and that is accessible from your V.B Program that runs on windows.
Q4) What is WSDL?
Ans: 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.
Q5) What is SOAP?
Ans: SOAP is a simple XML-based protocol to let applications exchange information over HTTP.
Q6) What are the types of Adapters?
Ans: Transactional & Non- Transactional Adapter
Q7) What is XML Schema?
Ans: An XML Schema describes the structure of an XML document.
Q8) What is the target namespaces function?
Ans: <schema xmlns="http://www.w3.org/2001/SchemaXML targetNamespace="http://www.example.com/name" xmlns:target="http://www.example.com/name">
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.
Q9) What type of WSDL file we usually keep in MDS?
Ans: We usually keep Abstract WSDL’s only in MDS.
Q10) What is the File-Based MDS Repository?
Ans: 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 like 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 usually located inside the Oracle JDeveloper home (JDEV_HOME/integration) if the default configuration is used.
Q11) What is File ChunkedRead?
Ans: This is a feature of Oracle File and FTP Adapters that uses an invoke activity within a while loop to process the target file. This feature enables you to process arbitrarily large files.
If an invalid payload is provided, then ChunkedRead scenarios do not throw an exception. When a translation exception (bad record violating the NXSD specification) is encountered, the return header is populated with the translation exception message that includes details such as line and column where the error occurred. All translation errors do not result in a fault. These errors are manifested as a value in the return header. You must check the jca.file.IsMessageRejected and jca.file.RejectionReason header values to ascertain whether an exception has occurred. Additionally, you can also check the jca.file.NoDataFound header value.
Q12) What are the Multiple Directories supported in File & FTP adapter?
Ans: The Oracle File and FTP Adapters support polling multiple directories within a single activation. You can specify multiple directories in JDeveloper as opposed to a single directory. This is applicable to both physical and logical directories.
Q13) What is the DB-Based MDS Repository?
Ans: 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.
Q14) Which configuration file store MDS configurations?
Ans: The adf-config.xml file is a configuration file that is used to store MDS Configurations.
Q15) What is the role of the Mediator?
Ans: 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 an SOA composite application.
Q16) What is OWSM?
Ans: 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.
Q17) What is an echo in Oracle Mediator?
Ans: 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.
Q18) Can we generate custom OWSM policies?
Ans: Yes, we can create custom OWSM policies.
Q19) What is Schematron Validation?
Ans: Schematron is an XML schema language, and it can be used to validate XML contents in an XML payload.
Q20) Difference between Read & Sync-Read operation in File & FTP adapter?
Ans: Read is used when Polling is required to be done while SyncRead is used when you need to read the file in between the flow i.e you want to have asynchronous communication.
Q21) What is Dynamic Routing in Mediator?
- The 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 a 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.
Q22) How to get Fault Trace in CatchAll block?
Ans: By using getFaultAsString() function.
Q23) Which is a static routing rule support fault policy?
Ans: Parallel rules only.
Q24) How many faults can Oracle Mediator service engine throw?
Ans: Only One
Q25) What are the Standard Faults in Mediator?
Ans: Mediator has only one standard fault.
Inclined to build a profession as Oracle SOA Admin?
Then here is the blog post on, explore
Q26) What is File Debatching?
Ans: When a file contains multiple messages, you can choose to publish messages in a specific number of batches. This is referred to as debating. During debatching, the file reader, on a restart, proceeds from where it left off in the previous run, thereby avoiding duplicate messages. File debatching is supported for files in XML and native formats.
Q27) What are the Standard Faults in BPEL?
Ans: Below is the list of Standard Faults in BPEL.
- conflicting request
- correlation violation
- forced termination
- invalid reply
- join failure
- remote fault,
- selection failure
- uninitialized variable
Q28) Difference Between Oracle SOA 10g and Oracle SOA 11g?
Ans: There are so many changes in oracle SOA 11g when compared to oracle SOA 10g in business and technology and some new functionality added
In Oracle SOA 11g contains Service Component Architecture whereas Oracle SOA 10g having no Service Component Architecture.
ORACLE SOA Suite 10g is based on Oracle AS 10g
- It uses Oracle Application Server 10.1.x
- Sun JVM
- Repository tool irca to create the SOA 10g repository
- Managed with Application Server Console
- Oralce SOA Suite 11g is based on Oracle FMW 11g
- It uses the Oracle Weblogic server 10gR3
- Sun or JRockit JVM
- Repository Creation Utility (RCU) to create or delete the SOA 11g repository
- Weblogic server console used for managing.
- Oracle SOA 11g all the SOA Components of the Project deployed into a Single Server whereas 10g each component is deployed into a particular server.
In SOA 10g having ESB Console, BPEL Console, Application Server Control these are all individual and not well integrated.
In SOA 11g Provides service monitoring across all SOA Components Such as ESB, BPEL, Human Workflow
SOA Suite 11g has the Enterprise Management Console me a console is used for Manage SOA Suite Services, Manage SOA Suite Deployment, Review Logs, and Exceptions.
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
Read more of Difference B/W Oracle SOA 10g and Oracle SOA 11g
Q29) By how many ways we can add OWSM policy to Web Service?
- Through policy annotations at design time
- Via the Administration Console at runtime
- Via Fusion Middleware Control or WLST
Q30) Can we attach OWSM policy to multiple composites to secure composites?
Ans: Yes, we can apply one policy to all composites in one domain using policy sets.
Q31) How to refer another XSL from the main XSL file?
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"/>
Q32) Why we use Call-template inside XSL?
Ans: Call-template works similarly to the apply-templates 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.
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
< xsl:call-template name="myTemplate">
< !-- Content: xsl -->
Q33) What is the use of the Trigger file?
Ans: By default, polling by inbound Oracle File and FTP Adapters start as soon as the endpoint is activated. However, if you want more control over polling, then you can use a file-based trigger. Once the Oracle File or FTP Adapter finds the specified trigger file in a local or remote directory, it starts polling for the files in the inbound directory.
For example, a BPEL process is writing files to a directory and a second BPEL process is polling the same directory for files. If you want the second process to start polling the directory only after the first process has written all the files, then you can use a trigger file. You can configure the first process to create a trigger file at the end. The second process starts polling the inbound directory once it finds the trigger file.
Q34) What is the use of Pick Activity?
Ans: 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.
Q35) Difference between XA & Non-XA transactions?
Non-XA (Local Transaction): It involves only one resource. When you use Non-XA transactions then you can’t involve multiple resources (different databases, Queues, application servers, etc), you can rollback or commit transactions for only one resource. There is no 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 a 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 resources participate in one transaction only.
Q36) Types of Rejection Message Handler?
- Web Service Handler
- Custom Java Handler
- JMS Queue
Q37) What are the types of Adapters?
Ans: Transactional & Non- Transactional Adapter
- Transactional: Database, JMS, AQ, MQ adapters
- Non Transactional: File & FTP adapter
Q38) What is the scope of Policy Sets or where we can apply Policy sets?
- 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 an SOA service or reference
- Port or component: All policy subjects of the specified type in a port or SOA component
Q39) What is inline schema?
Ans: 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.