| <html><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8"><link type="text/css" href="../../../../../..//default_style.css" rel="stylesheet"><link type="text/css" href="../../../../../..//webtools/wtp.css" rel="stylesheet"><title>Creating Bottom Up Web Service</title></head><body><table border="0" cellpadding="2" cellspacing="5" width="100%"><tbody><tr><td align="left" width="60%"><font class="indextop">Creating Bottom Up Web Service</font><br><font class="indexsub">Creating Bottom Up Web Service</font></td><td width="40%"><img src="../../../../../..//webtools/images/wtplogosmall.jpg" align="middle" height="129" hspace="50" width="207" alt="WTP Logo" usemap="logomap"><map id="logomap" name="logomap"><area coords="0,0,207,129" href="/webtools/" alt="WTP Home"></map></td></tr></tbody></table><table border="0" cellpadding="2" cellspacing="5" width="100%"><col width="16"><col width="*"><tbody><tr><td align="right" valign="top"> | |
|   | |
| </td><td valign="top"><p> | |
| <b>By Kathy Chan</b> | |
| <br> | |
| Sept 19, 2005 | |
| <br> | |
| <br> | |
| </p></td></tr><tr><td colspan="2" align="left" bgcolor="#0080c0" valign="top"><b><font color="#ffffff" face="Arial,Helvetica">Introduction</font></b></td></tr><tr><td align="right" valign="top"> | |
|   | |
| </td><td valign="top"><br></td></tr><tr><td align="right" valign="top"> | |
|   | |
| </td><td valign="top"><p> | |
| This document is one of a series of tutorials to | |
| demonstrate the use of the Web Services tools in the Web | |
| Tools Platform Project using the <b>WTP 1.0 M8 drivers</b>. | |
| </p></td></tr><tr><td align="right" valign="top"> | |
|   | |
| </td><td valign="top"><p> | |
| This tutorial shows how to create a simple Web service and | |
| Web service client from a Java class. The Java class in this | |
| scenario converts between the Celsius and Farenheit | |
| temperature scales. | |
| </p></td></tr><tr><td align="right" valign="top"> | |
|   | |
| </td><td valign="top"><br></td></tr><tr><td colspan="2" align="left" bgcolor="#0080c0" valign="top"><b><font color="#ffffff" face="Arial,Helvetica">Set Up</font></b></td></tr><tr><td align="right" valign="top"> | |
|   | |
| </td><td valign="top"><br></td></tr><tr><td align="right" valign="top"> | |
|   | |
| </td><td valign="top"><p> | |
| Before creating the Web service, there are two | |
| prerequisites: | |
| <ol> | |
| <li> | |
| <a href="InstallTomcat.html"> | |
| Install Apache Tomcat | |
| </a> | |
| </li> | |
| <li>Create a Dynamic Web project</li> | |
| <ol> | |
| <li> | |
| Open | |
| <b> | |
| File -> New -> Other... -> Web -> Dynamic Web Project | |
| </b> | |
| to create a Web module. | |
| </li> | |
| <li>Click <b>Next</b>.</li> | |
| <li> | |
| Enter | |
| <tt>Converter</tt> | |
| into the | |
| <b>Name</b> | |
| field. | |
| </li> | |
| <li> | |
| Ensure that the | |
| <b>Target server</b> | |
| is set to | |
| <b>Apache Tomcat v5.0</b> | |
| . If you have not previously configured | |
| a server runtime use the <b>New...</b> | |
| button beside the <b>Target server</b> field to | |
| do so. Result: | |
| </li> | |
| <br> | |
| <img border="0" SRC="resources/Converter.JPG"> | |
| <br> | |
| <li>Click <b>Finish</b> .</li> | |
| <li> | |
| Say <b>Yes</b> to open the J2EE perspective and you will | |
| see the <tt>Converter</tt> you created listed | |
| under <b>Dynamic Web Projects</b> in the <b>Project Explorer</b> | |
| view. Expand the <tt>Converter</tt> project to | |
| see its contents. | |
| </li> | |
| </ol> | |
| </ol> | |
| </p></td></tr><tr><td colspan="2" align="left" bgcolor="#0080c0" valign="top"><b><font color="#ffffff" face="Arial,Helvetica"> | |
| Creating a bottom up Java bean Web service and Web service | |
| client | |
| </font></b></td></tr><tr><td align="right" valign="top"> | |
|   | |
| </td><td valign="top"><br></td></tr><tr><td align="right" valign="top"> | |
|   | |
| </td><td valign="top"><ol> | |
| <li> | |
| Import the | |
| <a href="resources/wtp/Converter.java"> | |
| wtp/Converter.java | |
| </a> | |
| class into Converter/JavaSource (be sure to preserve the | |
| package). | |
| </li> | |
| <li> | |
| Select the | |
| <b>Converter.java</b> | |
| file. | |
| </li> | |
| <li> | |
| Open <b>File -> New -> Other... -> Web Services | |
| -> Web Service</b>. | |
| </li> | |
| <li> | |
| Click <b>Next</b>. | |
| </li> | |
| <li> | |
| Select | |
| <b>Generate a proxy</b> | |
| . | |
| </li> | |
| <li> | |
| Select | |
| <b>Test the Web service</b> | |
| . | |
| </li> | |
| <li> | |
| Select | |
| <b>Monitor the Web service</b> | |
| . | |
| </li> | |
| <li> | |
| Select | |
| <b>Overwrite files without warning</b> | |
| . | |
| </li> | |
| <li> | |
| Result: | |
| </li> | |
| <br> | |
| <img border="0" src="resources/bu1.JPG"> | |
| <br> | |
| <li> | |
| Click | |
| <b>Next</b> | |
| . Result: | |
| </li> | |
| <br> | |
| <img border="0" src="resources/bu2.JPG"> | |
| <br> | |
| <li> | |
| Click | |
| <b>Next</b> | |
| to get to the | |
| <b>Service Deployment Configuration Page</b> | |
| . Result: | |
| </li> | |
| <br> | |
| <img border="0" src="resources/bu3.JPG"> | |
| <br> | |
| <li> | |
| If you want to choose a server different from the one | |
| defaulted by the wizard, click the | |
| <b>Edit</b> | |
| button to: | |
| <a href="SelectServer.html"> | |
| select a server | |
| </a> | |
| . | |
| </li> | |
| <li> | |
| Click | |
| <b>Finish</b> | |
| . | |
| </li> | |
| <li> | |
| It will take about one minute for the wizard to assemble | |
| the Web service and Web service client Web projects, | |
| start Apache Tomcat, and deploy the projects to Tomcat. | |
| Once finished, the generated Sample JSP Web application | |
| will appear in the browser view, maximized here for | |
| clarity: | |
| </li> | |
| <br> | |
| <img border="0" src="resources/bu4.JPG"> | |
| <br> | |
| <li> | |
| Under | |
| <b>Methods</b> | |
| , click on | |
| <b>celsiusToFarenheit(float)</b> | |
| . | |
| </li> | |
| <li> | |
| Under | |
| <b>Inputs</b> | |
| , enter | |
| <tt>37</tt> | |
| into the | |
| <b>celsius</b> | |
| entry field. | |
| </li> | |
| <li> | |
| Click on | |
| <b>Invoke</b>. | |
| In the <b>Result</b> view, you should get a response of | |
| <b>98.6</b>. | |
| </li> | |
| <br> | |
| <img border="0" src="resources/bu5.JPG"> | |
| <br> | |
| <li> | |
| <p> | |
| Since you selected the "Monitor Web service" checkbox, | |
| a TCP/IP port is automatically created on the | |
| Tomcat server. When you invoke the Web service, | |
| the <b>TCP/IP Monitor</b> view comes up automatically showing | |
| the SOAP message request and response. Double-click | |
| on the <b>TCP/IP Monitor</b> view and select XML view in the drop-down | |
| combo for both request and response. Result: | |
| </p> | |
| </li> | |
| <br> | |
| <img border="0" src="resources/bu6.JPG"> | |
| <br> | |
| </ol></td></tr><tr><td colspan="2" align="left" bgcolor="#0080c0" valign="top"><b><font color="#ffffff" face="Arial,Helvetica">Explanation</font></b></td></tr><tr><td align="right" valign="top"> | |
|   | |
| </td><td valign="top"><p> | |
| The Web Service wizard is orchestrating the end-to-end | |
| generation, assembly, deployment, installation and execution | |
| of the Web service, Web service client, and sample JSPs. In | |
| this scenario, we clicked Finish on page one. In effect, this | |
| is allowing the wizard to pick reasonable defaults according | |
| to the basic high-level choices made on the first page. If | |
| you repeat this scenario, but use the Next button to work | |
| through the wizard, you will learn more about the kinds of | |
| choices that are available and the kinds of defaults being | |
| assumed. | |
| </p></td></tr><tr><td align="right" valign="top"> | |
|   | |
| </td><td valign="top"><p> | |
| After completing this scenario, the WSDL for the Converter | |
| Web service can be found in | |
| <tt>Converter/WebContent/wsdl/Converter.wsdl</tt>. | |
| </p></td></tr><tr><td align="right" valign="top"> | |
|   | |
| </td><td valign="top"><p> | |
| Now that your Web service is running, there are a few | |
| interesting things you can do with this WSDL file. Examples: | |
| </p></td></tr><tr><td align="right" valign="top"> | |
|   | |
| </td><td valign="top"><ol> | |
| <li> | |
| You can double-click on the WSDL to open the WSDL | |
| graphical editor. | |
| </li> | |
| <li> | |
| You can right-click on the WSDL and choose | |
| <b> | |
| Web Services -> Test with Web Services Explorer | |
| </b> | |
| to test the service. | |
| </li> | |
| <li> | |
| You can right-click on the WSDL and choose | |
| <b>Web Services -> Publish WSDL file</b> | |
| to publish the service to a public UDDI registry. | |
| </li> | |
| <li> | |
| You can click on the WSDL and choose | |
| <b> | |
| New -> Other... -> Web Services -> | |
| Web Service Client | |
| </b> | |
| to generate a Web service client. Note, however, that we | |
| have already witnessed the internal and visual features | |
| of the Web Service Client wizard since, in addition to | |
| being its own wizard, it is quite literally embedded | |
| within the larger Web Service wizard. | |
| </li> | |
| </ol></td></tr></tbody></table></body></html> |