A web service makes software application resources available over networks using standard technologies. Because web services are based on standard interfaces, they can communicate even if they are running on different operating systems and are written in different languages. For this reason they are an excellent approach for building distributed applications that must incorporate diverse systems over a network.
The following topic outlines the standard technologies that you use to build web services.
Web services are able to expose their resources in this generally accessible way because they adhere to recognized standards. A web service:
The Web Service Description Language (WSDL) is a standard XML format for describing web services. A WSDL file describes a particular web service so that other software applications can interface with it.
WSDLs are generally publicly accessible and provide enough detail so that potential clients can figure out how to operate the service solely from reading the WSDL file. If a web service translates English sentences into French, the WSDL file will explain how the English sentences should be sent to the web service, and how the French translation will be returned to the requesting client. For more information on WSDL files see WSDL Files: Web Service Descriptions.
Extensible Markup Language (XML) messages provide a common language by which different applications can talk to one another over a network. Most web services communicate via XML. A client sends an XML message containing a request to the web service, and the web service responds with an XML message containing the results of the operation. In most cases these XML messages are formatted according to SOAP syntax.
Simple Object Access Protocol (SOAP) specifies a standard format for applications to call each other's methods and pass data to one another. Note that web services may communicate with XML messages that are not SOAP-formatted. The types of messages supported by a particular web service are delineated in the service’s WSDL file.
For more information about XML see Introduction to XML.
Web services receive requests and send responses using widely used protocols such as HyperText Transfer Protocol (HTTP) and Java Message Service (JMS). A web service may support more than one protocol, and different methods on the web service may support different protocols. The protocols that a web service supports are published in the WSDL file.
For more information on network protocols, see Protocols and Message Formats.
The following illustration shows the relationship between a web service (in the center), its client software applications (on the left), and the resources it uses, including databases, other web services, and so on (on the right). A web service communicates with clients and resources over standard protocols such as HTTP by exchanging XML messages. The WebLogic Server on which the web service is deployed is responsible for routing incoming XML messages to the web service code that you write. The web service exports a WSDL file to describe its interface, which other developers may use to write components to access the service.