Java Integration
Transform Anything with Java
SOA Interview Questions
1. What is a WSDL ?
WSDL stands for Web Service Definition Language. A WSDL document is written in XSL and it has standard defined elements.
types: The type element defines all the data types used between the client and the server. The defined types can be reused.
message: The message element defines that date that is being exchanged between web service providers and consumers. A message can have multiple types. The types are defined under parts tag. Each web service will have input and output message.
portType: It is an abstract set of operations supported by one or more endpoints(Operations are further below this)
binding: It defines on how the portType operation will be transported over the wire. (HTTP, SOAP, JMS, etc)
services: It is a combination of binding and address(URI).
2. What is a concrete WSDL.
A WSDL that binding and Services defined is a concrete WSDL.
3. What is a SOAP.
It is a simple XML based standard message strucutre. This is widely used in web services. (JAX-WS)
SOA Basics
4. What is the differenece between soa 10g and 11g
In 11g, you can put all your project SOA components in composite.xml and deploy to single server. In 10g you will have to deploy each component to respective server
BPEL, ESB(Mediator in 11g) and OWSM are brought into one place in 11g
10g runs on OC4J and 11g can run on Weblogic and Websphere.
10g has different consoles for OWSM, EM. 11g has it together.
5. What are the basic uses of SOA
Loose coupling, re-usability, interoperability, flexiblity.
6. What is the difference between SOA and Oracle Fusion Middleware
SOA is a concept and it is incorporated in Oracle Fusion Middleware.
7. What is SCA
Service Component Architecture provides a model for developing applications in SOA.
8. What is a Mediator
Mediator is in charge of interconnecting within the SOA composite application, component that expose different interfaces. In addition mediator can perform filtering and routing decisions. It can also transform data to a certain extent.
9. How is fault Handling taken care in SOA.
We can create fault policies using the files, fault-binding.xml and fault-policies.xml
10. What is dehydration storage tables
Dehydration store is the database where BPEL engine stores all BPEL processes meta data and run time instance data.
11. How to make the partner link dynamic.
Use WS-Addressing schema and map it with the partner link in BPEL.
12. What is transcient and Durable BPEL.
Transient BPEL process will not have any break or mid level receive activity in their design. Dehydration process occurs at the end of the process. If the BPEL process crashes before finishing, the instance is lost.
Durable process are dehydrated when there is a breakpoint or an non-idempotent activity is encountered.
13. What is the term idempotent in BPEL.
An idempotent activity is an activity that can be retried(assign, inovke). Oracle BPEL Server saves the instance after nonidempotent activity.
False : Activity is dehydrated immediately after execution and recorded in dehydration store. When idempotent is set to false, it provides better failover protection, but may impact performance because of frequent dehydration.
True(default) : If Oracle BPEL process fails, it performs the activity again after restarting. This is because the server does not dehydrate immediately after the invoke and no record exists that the activity is executed.
14. What is a cannonical model
Cannonial Model is a design pattern used to communic ate between data formats. It is intended to reduce cost of development and standardize agreed data definitions. For Eg : If there is an organization using different EDI documents, they can put all together in an XML definition and reuse everytime a new partner is integrated with those documents.
15. Differences between web service choreography and Service Orchestrations.
Web service choreography pertains to the public protocol of web service, describing the nature and order of messages exchanged between web services and their consumers. This is specified by BEA and SUn.
Web service orchestration pertains to the private implementation of the seb service, describing and executing the interactions and flow among web services to form collaborative long running business process. BPEL4WS as brought forward by IBM and Microsoft.
16. What are fault handling Mechanism in SOA
There are two types of faults in BPEL.
Business Faults : Applicaction specific. (using throw or response from invoke)
Runtime Faults. Results of prombems within the running BPEL process. (BindingFault, RemoteFault, ReplayFault
17. What are the Types of transactions in SOA.
Inbound Transaction : A transaction initiated by an inbound adapter. Eg: JMS
Outbound Transaction : A transaction outbound from SOA, like a transaction made with a database or an external web service.
JTA Transaction : Every step of the process is executed within the context of a JTA transaction. This will ensure some atomic unit of work.
Asynchronous transaction : A composite transaction composed of sub transactions. These sub transactions are consecutive and serialize.
Synchronous transaction : These are transactions that execure in one thread from one end point to another.
18. What is compensate Activity.
The compensate activity invokes compensation on an inner scope that has succesfully completed. To clafify with and example, when you are booking a hotel and a car, consider the car booking is complete and the hotel booking has faulted, in this case the comensation activity will go and rollback the car reservation activity.
19. What is the role of a mediator
Oracle mediator provides light weight mediation between various components within a composite application. It can transform data to a certain extent.
20. Difference between OSB and Mediator.
OSB is altogether a different product. OSB will be used to route betwen composites whereas Mediator would be within composite. Mediator is light weight mediation and OSB is heavy weight mediation.
21. What is echo in Mediator.
Echo is an option by which we can exposte Mediator as a callable service without having to route it to any other service. The similar can be done using OSB, which is called Mock service.
22. What is resequencing in Mediator.
Resequencing is an option available in Mediator where you can sequence the request that is recieved. For eg: If you want an New Order and Update Order to be in sequence, then we can use this option. The various options available are FIFO(Time Based), Standard(ID Based), Best Efforts.
23. What is Schematron Validation
It can be used to validate XML payload.
24. What is dynamic routing in Mediator.
Dynamic routing can be achieved using Business Rules specified in Oracle Rules Directory. The rule engine is outside the composite.
25. What are the faults that Mediator can throw.
Mediator can throw only one fault which is mediator fault.
26. What are the different type of adapters in SOA.
Transactional : Database, JMS, AQ, MQ
Non Transactional : File, FTP, HTTP.
27. Difference between Read and Sync Read in FTP and File Adapter.
Sync Read alows us to read the file during the middle of the BPEL process where as Read will be used to read a file while polling.
28. What is FileChunkedRead
The different implementation of File and FTP Adapter are
Read File or Get File
Write File or Put File
Synchronous Read File
Chunked Read : Used for Larger file processing.
29. Different type of Rejection Message Handler
Web service Handler
Custom Java Handler
JMS Queue
File Handler
30. By how many ways we can handle error/fault in BPEL.
Catch Block
Fault Handling Framework.
31. Can we set Audit level in BPEL Process.
Yes. Using the property bpel.config.AuditLevel
32. What is nonBlockingInvoke Property.
In BPEL, the flow activity will only create pseudo paralellist, but to achieve full parallelism we need to set this proerty true.
33. What is streamResultToTemp property.
When there is an XSLT transformation, the result is normally cached in memory, this property will allow us to write the result to a temporary file and then use the same.