Implement web services applications from existing WSDL files with JAX-RPC
We can develop a web service with an existing WSDL file using JAX-RPC.
Best practice: IBM WAS supports JAX-WS and JAX-RPC. JAX-WS extends JAX-RPC. JAX-WS supports annotations. best-practices
Locate the WSDL file that defines the web service to implement. We can develop a WSDL or obtain one from an existing web service through email, downloading or a Uniform Resource Locator (URL).
To develop web services based on JAX-RPC, we can use a bottom-up development approach starting from existing JavaBeans or enterprise beans or we can use a top-down development approach starting with an existing WSDL file. This task describes the steps when using the top-down development approach.
When developing a JAX-RPC web service starting from an existing WSDL file, create the JavaBeans or enterprise bean and artifacts that enable the bean as web services and assemble all artifacts required for the web service, and deploy the application onto the application server.
- Considerations when using JavaBeans
JavaBeans exposed as JAX-RPC web services are supported only over an HTTP transport.
- Considerations when using enterprise beans
- The enterprise bean must be a stateless session bean.
- Enterprise beans that are exposed as JAX-RPC web services must be packaged in EJB 2.1 or in EJB 3.0 or higher modules.
- For JAX-RPC web services using EJB 2.1 style endpoints, the Web service method parameters must be one of the supported JAX-RPC types. These requirements are documented in the JAX-RPC specification.
- JAX-RPC web services using enterprise beans are supported over an HTTP or Java Message Service (JMS) transport.
Best practice: It is a best practice to use EJB 2.1 style enterprise beans with JAX-RPC applications. bprac
- Set up a development environment for web services. You do not have to set up a development environment if you are using Rational Application Developer.
- Develop the Java artifacts from a WSDL file. You need to create the deployment descriptor templates and bindings configured to map the service implementation to the JavaBeans or enterprise beans implementation.
- Complete the implementation of the web service application.
- For JavaBeans applications, complete the JavaBeans implementation.
- For enterprise beans applications, complete the enterprise beans implementation.
- Configure webservices.xml. For JAX-RPC web services, configure webservices.xml so that the application server can process the incoming web services requests.
- Configure the ibm-webservices-bnd.xmi deployment descriptor. Configure the ibm-webservices-bnd.xml deployment descriptor so that the application server can process the incoming web services requests.
- Assemble the artifacts for the web service.
Use assembly tools provided with the application server to assemble the Java-based web services modules.
If we have assembled an EAR file containing enterprise beans modules containing Web services, use the endptEnabler command-line tool or an assembly tool before deployment to produce a web services endpoint WAR file. This tool is also used to specify whether the web services are exposed using SOAP over Java Message Service (JMS) or SOAP over HTTP.
- Deploy the EAR file into the application server. We can now deploy the EAR file that has been configured and enabled for JAX-RPC web services onto the application server.
Results
You have developed a JAX-RPC web service application by starting with an existing WSDL file.
What to do next
After you deploy the EAR file, test the web service to make sure that it works with the application server.
Subtopics
- (zos)(dist)(iseries) Develop JAX-RPC web services with WSDL files (top-down)
- Assemble web services applications
- Deploy web services applications onto application servers
- Use a third-party JAX-WS web services engine
Related concepts
JAX-RPC Web services
Related tasks
Set up a development environment for web services Develop Java artifacts for JAX-RPC applications from a WSDL file Develop EJB implementation templates and bindings from a WSDL file for JAX-RPC web services Complete the JavaBeans implementation for JAX-RPC applications Complete the EJB implementation for JAX-RPC applications Configure webservices.xml for JAX-RPC web services Configure the ibm-webservices-bnd.xmi deployment descriptor for JAX-RPC web services Assembling web services applications Assembling a WAR file that is enabled for web services from Java code Assembling a web services-enabled WAR into an EAR file Deploy web services applications onto application servers Test web services-enabled clients Use HTTP to transport web services Use SOAP over JMS to transport web services
Artifacts used to develop web services Web services specifications and APIs