A Web Service Example: HelloServiceBean

This example demonstrates a simple web service that generates a response based on information received from the client. HelloServiceBean is a stateless session bean that implements a single method, sayHello. This method matches the sayHello method invoked by the client described in A Simple JAX-WS Client (page 503).

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:

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
@WebService
public class HelloServiceBean {
  private String message = "Hello, ";

  public void HelloServiceBean() {}

  @WebMethod
  public String sayHello(String name) {
    return message + name + ".";
  }
} 

Building and Packaging helloservice

In a terminal window, go to the <INSTALL>/javaeetutorial5/examples/ejb/helloservice/ directory. To build helloservice, type the following command:

ant 

This runs the default task, which compiles the source files and packages the application into an JAR file located at <INSTALL>/examples/ejb/helloservice/dist/helloservice.jar.

Deploying helloservice

Now that the Java EE application contains the enterprise bean deploy the helloservice application using ant:

ant deploy 

Upon deployment, the Application Server generates additional artifacts required for web service invocation, including the WSDL file.

Testing the Service Without a Client

The Application Server Admin Console allows you to test the methods of a web service endpoint. To test the sayHello method of HelloServiceBean, do the following:

  1. Open the Admin Console by opening the following URL in a web browser:
  2.   http://localhost:4848/

  3. Enter the admin username and password to log in to the Admin Console.
  4. Click Web Services in the left pane of the Admin Console.
  5. Click helloservice.
  6. Click Test.
  7. Under Methods, enter a name as the parameter to the sayHello method.
  8. Click the sayHello button.
  9. This will take you to the sayHello Method invocation page.

  10. Under Method returned, you'll see the response from the endpoint.