A web service is a collection of open protocols and standards used for exchanging data between applications or systems. Software applications written in various programming languages and running on various platforms can use web services to exchange data over computer networks like the Internet in a manner similar to inter-process communication on a single computer.
JAX-WS (Java API for XML Web Services) is a set of APIs for creating web services in XML format.
JAXB (Java Architecture for XML Binding) is a Java standard that defines how Java objects are converted from and to XML. It makes reading and writing of XML via Java relatively easy.
SOAP stands for Simple Object Access Protocol. SOAP is an XML based industry standard protocol for designing and developing web services.
Header of SOAP contains following information.
1. In SOAP header client should handle authentication and transaction.
2. The SOAP message should process by client.
3. EncodingStyle is also has in header.
Difference between the fault and exception depends upon where these error occurs, may be they occur on client side or on server side. Exception occurs on client side where as fault occurs on server side.
1. An envelope element is used to identifies and translates the XML document into a SOAP message.
2. A header element is used to contain header message.
3. A body is used to contain call and response message.
4. Fault element is used to communicate about the errors occurred during the process.
SOAP is used to provide a user interface that can be achieved from the client object and the request that it sends goes to the server that can be achieved by using the server object. The user interface creates some files or methods that consists of server object and the name of the interface to the server object. It also consists of other information like name of the interface and method. It uses HTTP to send the XML to the server using the POST method. The server parses the method and send the result to the client side. The server creates more XML that consists of responses of the user interface's request that is used using HTTP. Client can use any method of to send the XML. It can use the SMTP server as well as POP3 protocol to pass the messages and for request or respond queries.
This attribute indicates whether the header is optional or mandatory for the recipient to process. If you add mustUnderstand ="1" to the child element of the header element then it states that the header element must be processed otherwise it leads to failure.
This part of the element will contain the message which is intended for the ultimate delivery point. An element can be described inside the body element as a default namespace which indicates about the error message during the process. SOAP element acts just like a code to be processed during the execution of a certain application.
Following elements are contained in the SOAP message.
1. An envelope element which identifies and translates the XML document into a SOAP message.
2. A header element is a must as it should contain header message.
3. A body is required which should contain call and response message.
4. Fault element is required which can communicate about the errors occurred during the process.
An important difference between Remote call procedure and local call is that remote call can fail often and this occurs without the knowledge of the user. Local calls are easily handled. Another main difficulty lies with the code writing capability because it is written in a low level language.
This is used to define the data types in the document. Any SOAP element may use this format and it gets implemented on the child and contents of the SOAP. SOAP element will never have a default encoding.
A SOAP message has to travel a very long distance between its client and server but during the process a part of the message may be intended to be deployed to another destination which is made possible by the SOAP elements actor attribute which address the header element to a particular location.
HTTPS is similar to HTTP but it has an additional layer underneath the internet application layer which makes the data encrypted. This protocol is widely used than IOP or DCOM because those protocols are filtered by firewalls. HTTPS protocol advocates WS-I method to provide security for transmission of secured data.
In SOAP, procedures take named parameters and order is irrelevant. In XML-RPC order is relevant and parameters do not have names.
Internet application layer is used to transfer messages from one end to another end. Various products have been transported successfully from one end to another end using SOAP. Both SMTP and HTTP are two successful transport protocols used in transmitting information, but HTTP has gained good ground than HTTP.
SOAP by passes all firewalls thus making the process easier.
1.It has huge collection of protocols
2It is platform and language independent
3.Simplicity and extensible nature makes it the most wanted.
1.SOAP is much slower than middleware technologies
2.Due to the usage of HTTP for transporting messages and not the defined ESB or WS-Addressing interaction of parties over a message is fixed.
3. Information regarding the usability of HTTP for different purposes is not present which makes the application protocol level problematic.
1.SOAP should be coded in XML
2.SOAP envelope should be used for SOAP message
3.A SOAP encoding namespace must be used by SOAP.
4.A DTD reference and a XML processing instruction should not be contained.
1.SOAP has huge collection of protocols
2.SOAP is an platform and independent.
3.SOAP is an language independent.
4.Most important feature of SOAP is that it has Simple and extensible by nature.
WSDL stands for Web Services Description Language. It is a xml document containing information about web services such as method name, method parameter etc.
UDDI stands for Universal Description, Discovery and Integration. It is a XML based framework for describing, discovering and integrating web services. It contains a list of available web services. WSDL is the part of UDDI.
A WSDL document describes web-service using below elements:
WSDL 1.1 : types, messages, portType(operation - input, output), binding, service(port).
WSDL 2.0 : types, interface(operation - input, output), binding, service(endpoint).
Its easy to remember these elements with an analogy to java class:
portType is equivalent to name of class.
Each operation in portyType gives name of a method in the class.
The input and output tags inside operation corresponds to input parameter and return value.
types and messages define structure of these input, output in xml.
service element provides url where the web-service is hosted.
Top-down development or contract (WSDL) first approach.
Bottom-up development or code first approach.
Apache Axis is a web services framework which provides implementation of JAX-RPC(Axis 1.x) and JAX-WS(Axis 2) web services specifications.
Apache CXF is a web services framework which provides implementation of JAX-WS and JAX-RS web services specifications.
ESB is stands for Enterprise Service Bus. ESB is standard based which is most important component of Service Oriented Architecture(SOA).Using ESB we can connect applications through service interfaces.
The SMON background process performs all system monitoring functions on the oracle database.
Each time oracle is re-started, SMON performs a warm start and makes sure that the transactions that were left incomplete at the last shut down are recovered.
SMON performs periodic cleanup of temporary segments that are no longer needed.
Remote methods over multiple platforms and technologies are used with HTTP. SOAP is XML based protocol and platform-agnostic.
Each application uses different technology. This may cause problems with proxy server and firewalls. SOAP is the solution for this situation.
Industries transport the request for finding best route and best cost price. So the application transfers a request to other similar services which uses SOAP.
SOAP stands for Simple object access protocol and it describes the distributed processing model. There are different nodes are used and they are termed as SOAP nodes. These acts as a receiver of the processes and allows the access to the messages as well.
The nodes consists of the following process:
1. SOAP sender : It is a node that transmits the message received by the receiver.
2. SOAP receiver : It is a node that receives or accepts the message passed by the user.
3. SOAP message path : Is a node that sets the path to make it easy for the messages to go along and reach its destination.
4.Initial SOAP sender : Is also called as originator and it sends the message at the starting point of the message path and saves the settings there.
5. SOAP intermediary : Is a in between the SOAP receiver and SOAP sender that contains the SOAP message. It processes the header blocks that forward the SOAP message to the receiver.
6.Ultimate SOAP receiver : Is the node where the message gets received finally. This is responsible for the processing of the contents used by the SOAP body and the SOAP header also included in it.
The data that is exchanged between the client and server is in XML format and the SOAP passes the object between its methods and the object of the type parameter. SOAP deploys the service that is supplied in the Deployment management area and it is also an administrative tool. It keeps all the information about the services that are running on the web server. This is necessary to be done to keep the routing of the calls to identify the resource uniquely by using different parameters like different names and types. It is used to deploy the services for the client that sends the requests. Un-deploy or remove the services that are already deployed. Show the list of all the services that are deployed on the server and taking necessary actions on them.
1.SoapUI is the world leading tool for testing SOAP based web services, latest version support REST as well. 2. Firefox poster plugin