background image

Web Service Endpoint Implementation Class

<< Undeploying the cart Example | Deploying the helloservice Example >>
<< Undeploying the cart Example | Deploying the helloservice Example >>

Web Service Endpoint Implementation Class

The Web Service Endpoint Implementation Class
HelloServiceBean
is the endpoint implementation class. The endpoint implementation class is
typically the primary programming artifact for enterprise bean web service endpoints. The web
service endpoint implementation class has the following requirements:
The class must be annotated with either the javax.jws.WebService or
javax.jws.WebServiceProvider
annotations.
The implementing class may explicitly reference an SEI through the endpointInterface
element of the @WebService annotation, but is not required to do so. If no
endpointInterface
is specified in @WebService, an SEI is implicitly defined for the
implementing class.
The business methods of the implementing class must be public, and must not be declared
static
or final.
Business methods that are exposed to web service clients must be annotated with
javax.jws.WebMethod
.
Business methods that are exposed to web service clients must have JAXB-compatible
parameters and return types. See
"Default Data Type Bindings" on page 493
.
The implementing class must not be declared final and must not be abstract.
The implementing class must have a default public constructor.
The endpoint class must be annotated @Stateless.
The implementing class must not define the finalize method.
The implementing class may use the javax.annotation.PostConstruct or
javax.annotation.PreDestroy
annotations on its methods for life-cycle event callbacks.
The @PostConstruct method is called by the container before the implementing class
begins responding to web service clients.
The @PreDestroy method is called by the container before the endpoint is removed from
operation.
Stateless Session Bean Implementation Class
The HelloServiceBean class implements the sayHello method, which is annotated
@WebMethod
. The source code for the HelloServiceBean class follows:
package com.sun.tutorial.javaee.ejb;
import javax.ejb.Stateless;
import javax.jws.WebMethod;
import javax.jws.WebService;
@Stateless
A Web Service Example: helloservice
The Java EE 5 Tutorial · September 2007
666