Tuesday, July 28, 2015

Oracle Soa interview questions part2

1) Difference between Remote and Binding fault?
Ans:  Remote: When you are trying to interact with the target system and the target system is down and you are unable to invoke from the target system that is remote fault.
        Binding: The target system is up but still you are not able to connect to the target system due to technical issues like wrong connections that is binding fault.

2)Diff between Assign and transformation?
      Ans: when we have less number of messages to copy we will use assign and for large number of messages we will use transformation
3)Diff between pick and Receive?
Ans: Pick can receive multiple messages but Receive cannot.
Pick activity waits for the occurrence of events and performs the activity associated with that. It has two branches
a) On Message: Contains code for receive message.
 b) On Time out: Contains code for time out

4) What are WSDL elements?
Ans: There are 4 types of elements in WSDL
Data types: describes the data types used in the web service.
Message type: describes the message of the web service.
        c) Port type: describes the operation details and the port info of the web service.
        d) Binding service: describes the communication protocol of the web service.
        E) Service elements (optional): if any additional elements are used it explains.

5) Diff between Include and Import?
Include: If we have same namespace we will use Include
Import: If we have different name space we will use Import

6) How many types of WSDL’s are there?
Ans: There are two types of WSDL’s
Abstract: Before deployment. Contains messages, port types and data types
Concrete: After deployment. Contains messages, port types and data types and binding service                        
7) Diff between Abstract and Concrete WSDL? 
Abstract: Before deployment
Concrete: After deployment
Diff is you will get binding service info in the concrete WSDL but not in the Abstract WSDL.

8) What is Name Space and How many Namespaces are there?
Namespaces are used to avoid name conflicts. By using prefix names we can avoid name conflicts.
There are three types of Name Spaces:
General(name space):used with prefix
Syntax ->   xmlns: prefix=”URI” or “URL”
Default: Used without prefix
Syntax-> Xmlns=URI or”URL”
Target:
Syntax-> Target namespace=”URI”

9) What is well formed and Valid XML?
Ans) "Well Formed" XML document has correct XML syntax and A "Valid" XML document is a "Well Formed" XML document, which also confirms to the rules of a Document Type Definition (DTD).

10) What is the mandatory element of SOAP?
Ans: Body.

11) What is SOAP syntax?
Ans:   <soap: envelope>
           <Soap: header>
          </soap: header>
         <Soap: body>
        <Soap: fault>
       </soap: fault>
     < /soap: body>
   </soap: envelope>

12) Differentiate between 10g and 11g?
Ans)       10g                                                                             11g
a) Works on Application server                      a) works on Weblogic server
b) No SCA in log                                            b) Works on SCA architecture
c) Used ESB for routing and transformation   c) ESB has been upgraded to MEDIATOR with                                                      
                                                                            Advance concepts like EDN.
d) No SOA governance                                    d) SOA governance

13) What is SCA?
Ans: In log we use to work with all SOA components individually, develop individually, and deploy each component individually. It means if we are working with BPEL we have to login individually, like wise we use to work with other components also in similar manner. It means there was some communication gap between the SOA components. To avoid that communication gap, to avoid multiple deployments Oracle has introduced SCA architecture in 11g where all the SOA components are under one roof and you can use all the SOA components for a single requirement and you can deploy as a single project.

14) What is meant by EDN?
Ans: Event Delivery Network allows publish-subscribe type of loose coupling between SCA components.
Edn is the declarative way to use the power of publish-subscribe semantic within SOA 11g.

15) How will you handle errors in mediator?
Ans: Using Fault policies

16) What is the use of catch and catch all?
Ans: Catch: To catch a specified named fault message. This activity enables the user to create optional fault handling logic.
        Catch all: To catch unnamed fault message.

17) How many ways of fault handling?
Ans: There are two ways of fault handling
       System faults:       a) Process Based: 1) Catch     2) catch all
                                     b) Policy based: 1) Fault -policies.xml 2) fault-binding.xml  
       Business faults:   a) Process Based: we will raise the fault by using throw activity                                                                         And handle in catch block.

18) What are the common faults you face?
Ans: Remote fault: When you are trying to interact with the target system and the target system is down and you are unable to invoke from the target system that is remote fault.
   Binding fault: Due to technical issues you are unable to interact with the target system like wrong connections that is binding fault.
Selection failure: When there is a mismatch of in assigning the variables and mismatch in global and local variables we will get selection failure.
Time out error: When there is a delay in response we will get time out error.
Uninitialized: If we are using uninitialized variables in Bpel we will get uninitialized fault
.
19) Diff between Flow and FlowN?
Ans: Whenever we know the flow of our project we work with Flow activity.
When we are not sure of the flow of the project and don’t know how many web services we need to invoke. We will dynamically process at runtime by using FlowN.

20) What is Mediator?
Ans: Mediator is used for routing and transformation of data.

21) Diff between Mediator and Bpel?
Ans: BPEL
1) Complex Logic
2) Good Support language in form of”activities”
3) Performance wise very slow
4) Support of Dehydration and Instance Monitoring
5) For Long Running process BPEL is the Right Solution
6) To implement the controlled Transactions
Integration of Rules Engine and Human Workflow
7) To implement the service virtualization BPEL is not the right approach
Mediator
1) Less Complex Logic
2) Less Support
3) Three times faster than BPEL
4) No support of de hydration
 5) For Long Running process not a proper solution
6) You cannot control the transactions in Mediator.
7) Mediator is the right approach for the service virtualization.

22) What is Service virtualization?
Ans: Virtualization offers high-availability and load-balancing, performance and SLA monitoring and management, routing, versioning, and mediation capabilities to mitigate the impact of change at the provider on service consumers.

23) What is Dehydration? Diff dehydration tables?
Ans: Stores the instances of tables. Dehydration is a support of database where all your BPEL transactions are stored will be saved in the data base tables.
Diff Dehydration tables: cube_table, Audit_trail, cube_scope.

24) What is Dynamic partner link?
Ans: Whenever we are not sure about the requirement and which partner link needs to be invoked will be decided at runtime. To dynamically call the partner link at runtime is called as dynamic partner link.
For this you have to add two wsdl’s and you can invoke any of the one by using partner link.

25) What is correlation?
Ans: Correlation is used to avoid mismatch of messages. Whenever Ws-addressing is failed we use co-relation. Pick, invoke, receive activities are used in correlation. Co-relation is designed only on Asynchronous process.

26) How will you implement correlation?
Ans: a) Creating Correlation sets: In jdeveloper right on the correlation set and choose                co-relation sets.
  Property Alias: Is used to create correlation ID’s
b) Associating the correlation set on receive/invoke, pick activities.
Initiate Attribute (set value Y/N): When set Yes correlation works.
Pattern Attribute(value set- in/out, in –out): When the value is 'in', it means that the correlation property is set/validated on the incoming message
When the value is 'out', it means that the correlation property is set/validated on the message going out of Bpel
 27) What is WS-Addressing?
Ans: Ws-addressing is a transport mechanism through with web service communicates addressing info.

28) What is Oracle BAM? Use of BAM?
Ans: BAM is used to monitor business activities 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.
By using BAM we can analyze the existing sales and you can predict the future sales also.

29) How will you create JNDI?
Ans: We will create JNDI at two levels
Data source level
Db adapter level
And we need to connect Data source JNDI to DB adapter JNDI and finally we will use DB adapter JNDI.

30) Why will you create thin XA drivers? 
Ans: Thin XA supports global transactions and two phase commit.

31) What is meant by out bound connection pool?
Ans: Is the list of JNDI connections.

32)  What is Database Adapter?
Ans: The database adapter enables BPEL to communicate with the Oracle database. To access the data and to transfer a file in to the data base we use DB adapter.

33) How will you connect JMS to JNDI?
Ans:   a) Create a file storage at persistent level (internally we will call as DB).
            b) Create a queue or topic at application deployment server level.
           c) Create a connection factory at application deployment server level.
           d) Create a JNDI at JMS adapter level.
           e) Create a connection factory to JMS JNDI.
           f) Update the JMS adapter.

34) Why JMS?
Ans: It is reliable message service to transfer messages to the target.

35) Difference between Queue and Topic?
Ans: Queue: Defines set of Queues that are distributed on multiple JMS servers, but which are accessible as a single, logical queue to JMS client.
Topic: Defines set of Topics that are distributed on multiple JMS servers, but which  are accessible as a single, logical topic to JMS client.

36) What are different operations in DB adapter?
Ans: a) Call a store procedure or function.
        b)  Perform an operation or table
              - Insert
              -Update
             - Delete
             - S elect
             - Query by example
       c) DB polling
           - delete the rows that were read
          *- logical delete (update the field in table)
           - update a sequencing table
          - update an external sequencing table on diff DB
       - update an sequencing file
      d) Execute pure sol.

37) Difference between Physical path and Logical name?
Ans: Physical path: You provide folder details at design time
        Logical name: You provide folder details at run time

38) What do you mean by Logical delete?
Ans: It will update a particular field in the source table after it is read. It will not physically delete the row from the source file it just updates one field which is already read.

39) Difference between JMS adapter and AQ adapter?
Ans: JMS adapter is platform independent and it supports the message format in any data types but advanced queue is a vendor specific and it supports oracle object types.

40) How will you handle large files?
Ans: Using file debatching and file streaming we will handle large files.

41) Diff between BPEL and Business rules?
Ans: BPEL process focus on orchestration of systems, services.
            Business rules process focus on decision making and policies.

42) What is the use of Business rules?
Ans: Business rules are used to change the conditions at run time declaratively.

43) What is Rule set?
Ans: Contains number of if else conditions.

44) How we can change the rules dynamically at runtime?
Ans: By using SOA composer.

45) What is Domain Value Mapping?
Ans: Dvm enables you to map from one value used in a given domain to another value used in a different domain.
For example, one domain may represent a city with a long name (Boston), while another domain may represent a city with a short name (BO). In such cases, you can directly map the values by using domain value maps. A direct mapping of values between two or more domains is known as point-to-point mapping.

46) What is difference between Mediator and OSB?
Ans:
Mediator 
The “tiny”, “light weight” service bus
Limited to simple Mediator functionality for the implementation of the VETRO pattern
V alidate
E nrich
T ransform
R oute
O perate
Value Mapping and Cross-Reference Table for supporting the canonical data model
Development through JDeveloper IDE
Event Delivery Network for Publish-Subscribe semantic
Message Transformation with XSLT
Can be used and deployed as a SCA component
Oracle Service Bus (OSB) 
The large, powerful service bus
Extended functionality important for enterprise-wide Integration, like
Message Throttling
Service Pooling
Reliable Messaging
Development through Eclipse IDE or Web Console
Message Transformation over XQuery and XSLT
OSB specific deployment
Not yet integrated with SCA

47)  What is Human Workflow?
Ans: Whenever an human interaction is required then human task is required.

48) Where will you use HWF?
Ans: Leave approval.

49) Where will you integrate HWF?
Ans: BPM work list applications.

50) What is AIA?
Ans: Application integration architecture (AIA) is a standard architecture provides end to end, integrated business processes and applications which is having readymade components like Foundation Packs and PIP-Process Integration Packs (Ready made pack).

51) What is ABCS? Types?
Ans: Application business connector service coverts ABM (Application business message) as EBM (Enterprise business message).
It converts the BPEL ABM message into EBM because Mediator takes input only as EBM or EBO.
It is generated through AIA service construction.
There are two types of ABCS:
 A: Requestor
B: Provider

52) What is CAVS?
Ans: We test the AIA components in CAVS (Composite application validation system).

53) What are the predefined components in AIA?
Ans: ABO or ABM.

54) How will you handle errors in AIA?
Ans:  Using fault policies.

55) What is EBF?
Ans: It is a helper tool which will be used to design complex business solutions.

56) What is Order to bill?
Ans: provides pre-built integration between Oracle Siebel CRM with Oracle BRM allowing for synchronization of customer, product and pricing data across the applications. Customer Service Reps (CSRs) can create accounts and submit Sales Orders which would synchronize automatically between the CRM and Billing systems in the Business support system BSS eco-system.

57) How will you customize EBO?
Ans: We will use EBO from EBO folder and we will modify as per the requirement.

58)  What is OSB?
Ans: OSB is a large powerful Bus. It provides message delivery services based on the standards including SOAP, HTTP and JMS.
It is a guaranteed message delivery to variety of service providers and consumers.

59) In which environment you will work with OSB?
Ans: Eclipse and sbconsole.

60) What are the different protocols used in OSB?
Ans:  SOAP, HTTP, JMS, MQ, SMTP, FTP, FILE, JMS/XA.

61) How many ways we will handle errors in OSB?
Ans: Two ways
            A: XSD validation
           B: fault policies.

62) What are the services of OSB?
Ans: a: Business service:  is a high level routing where we cannot write validations (No message flow)
        B: Proxy service: in proxy service we can create nodes and write validations. (Message flow)

63) What are the features of OSB?
Ans: Service Integration - features used for integrating disparate service end-points,   message brokering, and mediating and exposing services for reuse.
Service Security - features used for service authentication and authorization, message security enforcement, and user identity validation
Service Composition - features used for configuring message routing logic, message transformation, service configuration, validation and registry.
Service Management - features used for monitoring and managing service activity and availability.

64) Service pooling?
Ans:  Pool of service we select at runtime.

67) What is OWSM?
Ans: By using Oracle web service security management policies we will implement the security on web services.
We have diff policies like authentication, authorization, time, agent id.

68) What are the steps to implement BAM?
Ans: Steps to implement use-case:
Create Employee Data Object
Create BAM Report
Configure BAM Adapter
Create BPEL Sensor Activity and Sensor Action.

69)  What is Native format builder?
Ans:  Is used to convert non xml files into xml format.

70) What is Compensate handling?
Ans:  whenever we are working with couple of process lie A,B,C and the first two processes has successfully completed and the third process has failed due to technical reasons in that case if u want to rollback the first two successful transactions we use compensate activity.

71)  What is mean by process file recursively?
Ans:  To read all the files one by one recursively we use process file recursively.

72)  If your JNDI connections are wrong what are the errors you will face?
Ans: Binding fault or JCA binding error.

73) What is DB polling?
Ans: It picks the file on time frequency.

74) Operations in JMS Adapter?
Ans: a: Consume msg
          B: Produce msg
          C: Request reply.

75) What are the features of Mediator?
Ans:  a: dynamic routing
          B: error handling
          C: event handling
          D: transformations
          E: validations
          F: java callout
          G: sync and async interactions
          H: sequential and parallel routing of msgs
          I: content based and header based routing
          J: Multiple part message support.

76) Diff between ESB and Mediator?
Ans:     ESB                                                                       Mediator
             A) Used in 10g                                        a) Used in 11g
            b) No SCA                                               b) SCA component
            c) No EDN                                                c) EDN
           d) Works on Application server                 d) Works on weblogic server

77)  What are Cross reference tables?
Ans: Cross reference table was introduced to create domain value maps where cross reference tables will be used as temporary tables, where you can insert the records, delete the records.

78) What is MDS? How will you connect to MDS?
Ans: MDS is a central repository for managing and reusing shared resources like xsd, wsdl, xsl files and fault policies.
MDS are two types: a) Central MDS (default) is present inside the SOA server.
                                 b) Local MDS is a folder inside jdeveloper.

79)We are connecting MDS in two ways:
 a) Database based (By using Oracle user name and password)
b)   File based (by using ftp,putty,winsftp)

80)  What are decision tables?
Ans: decision table provides a mechanism for describing data processing tasks. It displays the multiple related rules in a single spreadsheet style view.

81)  What is a Fact?
Ans:  Facts are the objects that rules reason on.

82) What are Bucket sets?
Ans:  defines the data types of fact properties.

83)Use of Business rules?
Ans:  Business rules are used in
           A: dynamic processing
           B: externalize business rules in the process
           C: Data validation
           D: Human tasks routing.

  84) What is SDO?
Ans:  Service data object provides a data programming architecture. It provides a standard view on  data and provides efficient transportation as well as change capture information of a change summary.
Composite .xml is built on SDO.

85) How many times of deployment methods are there?
Ans: a: Deploy application server( using weblogic connection (hostname,port))
B: Deploy to SAR-Service application repository (every project will generate a JAR   file, Using JAR file we will deploy.)
         C: By using ANT scripts

86) How many ways we can see the output?
Ans: Tree view, Xml view.

87) Difference between Sync read and read?
Ans: Sync read reads the current content of the file.
        Read is an operation that polls for the incoming files in your local environment.
  Diff is Sync read won’t read files multiple times, read can come back and read files multiple times by polling.