Developing a WSDL file for JAX-RPC applications

You can develop a Web Services Description Language (WSDL) file to describe the characteristics of your Java™ API for XML-based RPC (JAX-RPC) web services application including where the service resides and how to invoke the service using an XML format.

Before you begin

Depending on your development path, develop a service endpoint interface from a JavaBeans implementation or develop a service endpoint interface from an enterprise bean implementation.

About this task

You need a WSDL file to use web services. You can develop your own WSDL file or get one from a web services provider through email, downloading, or through a Uniform Resource Locator (URL). This documentation assumes you are creating your own.

Develop a WSDL file by following the actions listed:

Procedure

  1. [AIX Solaris HP-UX Linux Windows]Configure the service endpoint interface class and referenced classes into your CLASSPATH variable.
    • On Windows systems, set CLASSPATH="%CLASSPATH%;<list your application Java archive (JAR) files and classes>".
    • On UNIX and Linux® systems, export CLASSPATH="$CLASSPATH:<list your application JAR files and classes>".
  2. Run the Java2WSDL seiInterface command.
    A WSDL file named seiInterface.wsdl is created.
    • Move the WSDL file to the META-INF/wsdl subdirectory if you are using Enterprise JavaBeans (EJB).
    • Move the WSDL file to the WEB-INF/wsdl subdirectory if you are using JavaBeans.
  3. Edit the generated WSDL file and inspect the part names.
    The WSDL parts have names like arg_0_0. Modify the WSDL file to use the actual names of the Java parameters.
  4. (Optional) Use the Java2WSDL command tool to generate the correct part names of WSDL file.
    You can automatically generate and set the correct part names by using the Java2WSDL command tool. Generating and setting the part names is done by providing additional information to the Java2WSDL command tool in the form of a Java implementation class that implements the same methods as the service endpoint interface and is compiled with debug information turned on. Parameter names are stored in the .class file with the debug information. If your implementation class is compiled with debug on, you can use the Java2WSDL -implClass seiImpl seiInterface command to generate a WSDL file with the proper part names.

Results

A WSDL file that defines the web services described by the service endpoint interface.

Example

This example uses the JAR file name AddressBook.jar that contains a class named AddressBook.class class file.

You must add the AddressBook.jar file to your CLASSPATH to create the WSDL file. The JAR file contains an EJB implementation class that is compiled with debugging information turned on. Run the Java2WSDL -implClass addr.AddressBookBean addr.AddressBook command to create the file, AddressBook.wsdl.

What to do next

Depending on your development path, develop web services deployment descriptor templates for JavaBeans or develop web services deployment descriptor templates for an enterprise beans implementation.