Content deleted Content added
Leopard969 (talk | contribs) No edit summary |
m Corrected a grammatical error and added a parenthetical definition of a tech acronym. |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 18:
| website = {{URL|http://ws.apache.org/wsif}}
}}
The '''Web Services Invocation Framework''' (WSIF) supports a simple and flexible [[Java (programming language)|Java]] API (Application Programming Interface) for invoking any [[Web Services Description Language]] (WSDL)-described service.
Using WSIF, WSDL can become the centerpiece of an integration framework for accessing software running on diverse platforms which
== Structure ==
In WSDL, a binding defines how to map between the abstract ''PortType'' and a real service format and protocol. For example, the SOAP binding defines the encoding style, the ''SOAPAction'' header, the namespace of the body (the targetURI), and so forth.
WSDL allows multiple implementations for a Web service and multiple ports that share the same PortType. In other words, WSDL allows the same interface to have bindings to services
WSIF provides an API to allow the same client code to access any available binding.
The WSIF uses ''providers'' to support these multiple WSDL bindings. A provider is a piece of code that supports a WSDL extension and allows invocation of the service through that particular implementation. WSIF providers use the J2SE JAR service provider specification, making them discoverable at [[Run time (program lifecycle phase)|runtime]].
Clients can utilize new implementations and delegate the choice of port to the infrastructure and runtime, which allows the implementation to be chosen on the basis of quality of service characteristics or business policy.
== Bindings for EJBs, JMS, and JCA ==
WSIF defines additional binding extensions so that [[Enterprise JavaBean]] (EJBs), local Java classes, software accessible over [[message queue]]s using the [[Java Message Service]] (JMS) API, and software that can be invoked using the [[Java EE Connector Architecture|Java Connector architecture]] can also be described in WSDL. WSIF is packaged with providers that
== Description ==
WSIF enables developers to interact with abstract representations of Web services through their WSDL descriptions instead of working directly with the Simple Object Access Protocol (SOAP) APIs, which is the usual programming model. With WSIF, developers can work with the same programming model regardless of how the Web service is implemented and accessed.
WSIF allows stubless or completely dynamic invocation of a Web service, based upon examination of the metadata about the service at runtime. It also allows updated implementations of a binding to be plugged into WSIF at runtime,
It is closely based on WSDL
If a complicated enterprise software system consists of various pieces of software, developed over a period of decades—EJBs, legacy apps accessed using Java's connector architecture, SOAP services hosted on external servers, old code accessed through messaging middleware—it is necessary to write software applications that use all these pieces to do useful things, where
If the software is moved to a different server, the code breaks. The SOAP libraries used change—for example, when
WSIF
== Differences between WSIF and Axis ==
|