type=page
status=published
title=Overview of Java API for XML Web Services
next=jaxws002.html
prev=jaxws.html
~~~~~~
Overview of Java API for XML Web Services
=========================================

[[A1250966]]

[[overview-of-java-api-for-xml-web-services]]
Overview of Java API for XML Web Services
-----------------------------------------

In JAX-WS, a web service operation invocation is represented by an
XML-based protocol, such as SOAP. The SOAP specification defines the
envelope structure, encoding rules, and conventions for representing web
service invocations and responses. These calls and responses are
transmitted as SOAP messages (XML files) over HTTP.

Although SOAP messages are complex, the JAX-WS API hides this complexity
from the application developer. On the server side, the developer
specifies the web service operations by defining methods in an interface
written in the Java programming language. The developer also codes one
or more classes that implement those methods. Client programs are also
easy to code. A client creates a proxy (a local object representing the
service) and then simply invokes methods on the proxy. With JAX-WS, the
developer does not generate or parse SOAP messages. It is the JAX-WS
runtime system that converts the API calls and responses to and from
SOAP messages.

With JAX-WS, clients and web services have a big advantage: the platform
independence of the Java programming language. In addition, JAX-WS is
not restrictive: A JAX-WS client can access a web service that is not
running on the Java platform and vice versa. This flexibility is
possible because JAX-WS uses technologies defined by the W3C: HTTP,
SOAP, and WSDL. WSDL specifies an XML format for describing a service as
a set of endpoints operating on messages.


[width="100%",cols="100%",]
|=======================================================================
a|
Note:

Several files in the JAX-WS examples depend on the port that you
specified when you installed GlassFish Server. These tutorial examples
assume that the server runs on the default port, 8080. They do not run
with a nondefault port setting.

|=======================================================================



