SOA Basic Interview Questions
Question : What is SOA?
Ans: 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.
Question : Is Oracle SOA same as Oracle Fusion Middleware?
Ans: No because SOA is one of the parts in Fusion middleware and SOA behaves like user interface where as Fusion is big platform
Question :Principles of SOA?
Ans:
- Loose coupling
- Re-usability
- Interoperability
- Flexible
Question : What is SCA?
Ans: Service Component Architecture defines how various enterprise pieces are created and assembled together as modular components to increase IT Sustainability and flexibility. SCA provides a programming model for building applications and systems based on a Service Oriented Architecture. In simple terms, its like a platform on which you deploy your SOA applications in a more standard,easier and flexible manner.
Question :What is the difference between 10g and 11g?
Ans:
- 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.
- In 10g BAM and business rules are outside SOA Suite, but in 11g they are in SOA Suite.
Question : What is xml?
Ans: extensible markup language is used to store or transfer data temporary. In XML all tags are user defined.
Question :Diff between well formed XML and
valid XML?
Ans: If an XML satisfying all XML syntax rules then it
called well formed XML, if an XML satisfying both XML rules and XSD definitions
then it called valid XML.
All valid XML’s are well formed xml,
but all well-formed XML may not be valid XML.
Question :XML syntax rules?
Ans:
XML
Tags are Case Sensitive
a. All XML Elements Must Have a Closing
Tag
b. XML Elements Must be Properly Nested
c. XML Documents Must Have a Root
Element
d. XML Attribute Values Must be quoted
Question :What is XSD?
Ans: XSD (XML Schema definition) is
used to define the structure of an XML. An XML Schema:
· defines elements that can appear in
a xml document
· defines attributes that can appear
in a xml document
· defines the order of parent and
child elements
· defines data types for elements and
attributes
· Defines default and fixed values for
elements and attributes.
Question :What is namespace?
Ans: XML
namespaces provide a simple method for qualifying element and attribute names
used in xml or Namespace are a simple and straightforward way to distinguish names used in xml documents. namespace logically creates a separate room for the
element and attribute definitions. XML Namespaces provide a method to avoid
element name conflicts.
Question :What is target namespace?
Ans: A target name space in XSD used
to represents all the element and attribute definitions in that current XSD.
Question: Different types of elements in XML?
Ans: Simple type:A simple element is an XML element that contains only text. It cannot contain any other elements or attributes.
Complex type:if an element contains complex
structure like child elements, attributes then it called complex type.
Question: Difference between import and
include in namespace?
Ans: If the importing XSD
namespace is equal to the current target namespace then we have to use include
keyword, If the importing XSD name space is different from the current XSD
target namespace then use IMPORT keyword.
Question: How to specify mandatory and
optional elements in XSD? Or how to specify xml element occurrence in XSD?
Ans: by using keywords minoccures
and maxoccures , by default minoccures=1 and maxoccures=1 (i.e all fields are
mandatory).
Question: How to specify restrictions in
XSD for xml element values?
<xs:restriction
base="xs:string">
<xs:pattern value="[a-z]"/>
</xs:restriction>
<xs:restriction
base="xs:string">
<xs:length value="8"/>
</xs:restriction>
Question : What is Web Service ?
Answer: Web service is a piece of code which is available on web (internet). That code of piece can be developed in any language (java, .net etc). A client invokes the web service by sending XML message and it wait for xml response (synchronously or asynchronously).
Or
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).
Question: What is WSDL ?
Answer : WSDL stands for Web Services Description Language, is an
XML-based language for describing Web services and how to access them.
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 :
Element Name
|
Description
|
types
|
It defines the xml schema data types used by the web service. inside types we have XSD.
|
message
|
Defines the data elements for each operation.Messages are connected to the elements in XSD, it brings details from TYPE. there are two messages,first message links to Process, second message links to Process response.
|
portType
|
Describes the operations that can be performed and the message involved.the port type element defines a web service,the operation that can performed and the messages that are involved.(port is logical grouping of operations),the request,response types is the most common operations,but WSDL defines four port type operations.
|
binding
|
It gives the information about the message level and transport level protocol
|
service
|
A collection of related endpoints, where an endpoint is defined as a combination of a binding and an address (URI)
|
Question:
What are the client service
communication protocols? Or what are the service interaction patters or WSDL
operation types.
Ans:
Service Type
|
Type
|
Definition
|
One
Way
|
One-way
|
The
service can receive a message but will not return a response
|
Synchronous
|
Request-response
|
The
service can receive a request and will return a immediate response.
Synchronous services works on single port
|
ASynchronous
|
Solicit-response
|
The
service can receive a request and will return a delayed response.
Asynchronous
services required two ports, one for request and one for send the response
back.
|
Notification
|
Notification
|
The
service can send a notification response without request
|
Question: Difference between Abstract and Concrete WSDL ?
Ans : Abstract WSDL contains only messages and operations. it dont have services and bindings.Abstract WSDL is also called Design time WSDL, Abstract WSDL is used by SOAP Server.
Where as concrete WSDL contains messages, operations and transport specific information (JMS or Http).It also called run time WSDL, This is used by SOAP client.
Question: Can a WSDL contain multiple
bindings?
Ans: Yes, in each
<binding> element we can specify specific communication protocols.
Question:What is End point URL, or End
point location?
Ans: The full address of the service
where it is running called “End Point Location” , or “End Point URI”. Ex:http://soathnologies:7001/soa-infra/ADD
No comments:
Post a Comment