Endpoint interface
This article needs additional citations for verification. (October 2012) |
In the Web service context the term endpoint received a formal definition with the W3C recommendation "WSDL 2.0" of 2007,[1]
- Defines the address or connection point to a Web service. It is typically represented by a simple HTTP URL string
The term "endpoint interface" is more specific about "how to implement the endpoint", for example by an OpenAPI specification or by WSDL specification. Typical endpoints can be expressed by URI Templates.
In Open API terms the endpoints are resources that the API exposes. The old (2004) term "end point" received also a glossary definition:[2]
- An association between a binding and a network address, specified by a URI, that may be used to communicate with an instance of a service. An end point indicates a specific location for accessing a service using a specific protocol and data format. [WSD Reqs]
SOAP and Java context
[edit]A SOAP-based web service can be implemented as a single Java class. An endpoint interface, also known as a service endpoint interface (SEI), is a term used in Java Platform, Enterprise Edition when exposing Enterprise JavaBeans as a Web service (see also Service Implementation Bean (SIB)). It is annotated with @WebService
and is a component interface, which declares all the abstract methods that are exposed to the client. As it extends the java.rmi.Remote
interface, all methods must throw the RemoteException
. A Web service client accesses a stateless session bean through the bean's Web service endpoint interface. Like a remote interface, a Web service endpoint interface defines the business methods of the bean.
In contrast to a remote interface, a Web service endpoint interface is not accompanied by a home interface, which defines the bean's life-cycle methods. The only methods of the bean that may be invoked by a Web service client are the business methods that are defined in the Web service endpoint interface.
The methods of an endpoint interface for a Web service are implemented in a session bean class that is stateless.