| <html> |
| <head> |
| <meta |
| http-equiv="Content-Type" |
| content="text/html; charset=UTF-8"> |
| <meta |
| http-equiv="Content-Type" |
| content="text/html; charset=iso-8859-1"> |
| <link |
| rel="stylesheet" |
| href="../../../../../default_style.css" |
| type="text/css"> |
| <link |
| rel="stylesheet" |
| href="../../../../../webtools/wtp.css" |
| type="text/css"> |
| <title>jst j2ee</title> |
| </head> |
| <body> |
| <table |
| width="100%" |
| cellspacing="5" |
| cellpadding="2" |
| border="0"> |
| <tbody> |
| <tr> |
| <td |
| width="60%" |
| align="left"><font class="indextop">WTP Tutorials - Testing the Creation of Annotated and |
| Non-Annotated Servlets in the Web Tools Project</font> <br> |
| <font class="indexsub">jst j2ee</font></td> |
| <td width="40%"><img |
| width="207" |
| hspace="50" |
| height="129" |
| align="middle" |
| src="../../../../../webtools/images/wtplogosmall.jpg" |
| alt=""></td> |
| </tr> |
| </tbody> |
| </table> |
| <table |
| width="100%" |
| cellspacing="5" |
| cellpadding="2" |
| border="0"> |
| <col width="16"> |
| <col width="*"> |
| <tbody> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"> |
| <p><b>John Lanuti </b> <br> |
| IBM Rational <br> |
| February 24,2005 <br> |
| <br> |
| <br> |
| This tutorial will show you how to set up, create, and deploy a simple Hello World servlet on the Tomcat |
| server using the Eclipse Web Tools Project. <br> |
| </p> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| bgcolor="#0080c0" |
| align="left" |
| colspan="2"><b><font |
| face="Arial,Helvetica" |
| color="#ffffff">Prerequisites For The Tutorial</font></b></td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"> |
| <ol> |
| <li>Web Tools Platform (WTP) project<br> |
| The WTP project can be downloaded from <a href="http://download.eclipse.org/webtools/downloads/">http://download.eclipse.org/webtools/downloads/</a> |
| <br> |
| <br> |
| </li> |
| <li>XDoclet 1.2.2<br> |
| XDoclet is available from <a |
| href="http://xdoclet.sourceforge.net" |
| target="_top">http://xdoclet.sourceforge.net</a> <br> |
| <br> |
| </li> |
| <li>Tomcat Server<br> |
| Tomcat is available from <a |
| href="http://jakarta.apache.org/tomcat/" |
| target="_top">http://jakarta.apache.org/tomcat/</a> <br> |
| <br> |
| </li> |
| <li>JDK 1.4.2<br> |
| Sun's JDK is available from <a |
| href="http://java.sun.com/j2se/1.4.2/download.html" |
| target="_top">http://java.sun.com/j2se/1.4.2/download.html</a> <br> |
| <br> |
| </li> |
| </ol> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| bgcolor="#0080c0" |
| align="left" |
| colspan="2"><b><font |
| face="Arial,Helvetica" |
| color="#ffffff">Workspace Configuration </font></b></td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"><br> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"> |
| <ol> |
| <li>Open the J2EE Perspective. Window->Open Perspective->Other...->J2EE.</li> |
| <li>Set up XDoclet preferences. Window->Preferences->J2EE Annotations->XDoclet. Make sure |
| the "Enable XDoclet Builder" option is checked. Select your desired version level and navigate to your |
| XDoclet home directory. Hit OK. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image22.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Add the Tomcat server. Window->Preferences->Server->Installed Runtimes. Hit the "Add" |
| button. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image14.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Select the appropriate Apache Tomcat level for your Tomcat server and hit the "Next" button. |
| Fill in the appropriate Tomcat home directory. Hit the "Finish" button.<br> |
| <br> |
| <img |
| src="images/ServletScenario_Image13.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| </ol> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"><br> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"><br> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| bgcolor="#0080c0" |
| align="left" |
| colspan="2"><b><font |
| face="Arial,Helvetica" |
| color="#ffffff">Dynamic Web Project Creation</font></b></td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"><br> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"><br> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"> |
| <ol> |
| <li>From the J2EE Project Explorer, right click on the "Dynamic Web Projects" group. Select |
| New->Dynamic Web Project. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image1.jpg" |
| alt=""> <br> |
| <br> |
| </li> |
| <li>Type the project name, "HelloWorld". Make sure the "Add Module to EAR project" selection is |
| unchecked. Tomcat does not support the use of EAR projects so we will only make a stand alone web |
| application. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image2.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Ensure the appropriate servlet version is selected to match your level of Tomcat. Hit finish.</li> |
| </ol> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"><br> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"><br> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| bgcolor="#0080c0" |
| align="left" |
| colspan="2"><b><font |
| face="Arial,Helvetica" |
| color="#ffffff"> Non Annotated Servlet Creation </font></b></td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"><br> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"> |
| <ol> |
| <li>Expand the "Dynamic Web Projects" group to the HelloWorld web project, and then to the |
| "Servlets" catgeory.</li> |
| <li>Right click on "Servlets" and select New->Servlet. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image3.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Type "test" in as the default java package. Type the Servlet Name, "HelloWorld". Uncheck the |
| "Generate an annotated servlet class" checkbox. Hit next. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image5.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Take all the defaults. Hit next. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image4.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Select the doDelete and doPut method checkboxes in addition to the defaults. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image6.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Hit "Finish" to create the non annotated servlet.</li> |
| <li>Because it is non-annotated, the web deployment descriptor metadata artifacts will be created |
| for you as well. We can verify their existence by looking in the project explorer "Servlets" section for |
| the HelloWorld web application. The HelloWorld servlet and servlet mapping should now show up.<br> |
| <br> |
| <img |
| src="images/ServletScenario_Image7.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>The servlet java class should also show up with the methods defined that were selected in the |
| wizard. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image8.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Double click on the HelloWorld class in the Project Explorer. Add the following code to the |
| doGet method, , as well as an import statement for java.io.PrintWriter:<br> |
| <p>PrintWriter out = new PrintWriter(System.out); <br> |
| out = response.getWriter(); <br> |
| out.println("Hello world!");<br> |
| out.close();</p> |
| </li> |
| <li>Save and close the editor.</li> |
| <br> |
| <br> |
| </ol> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| bgcolor="#0080c0" |
| align="left" |
| colspan="2"><b><font |
| face="Arial,Helvetica" |
| color="#ffffff">Annotated Servlet Creation </font></b></td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"><br> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"><br> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"> |
| <ol> |
| <li>Expand the "Dynamic Web Projects" group to the HelloWorld web project, and then to the |
| "Servlets" catgeory.</li> |
| <li>Right click on "Servlets" and select New->Servlet. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image3.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Type "test" in as the default java package. Type the Servlet Name, "XDcoletHelloWorld". Make |
| sure "Generate an annotated servlet class" is checked. Hit next. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image11.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Take the defaults. Hit next. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image23.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Select the doDelete and doPut method checkboxes in addition to the defaults. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image6.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Hit "Finish" to create the annotated servlet.</li> |
| <li>Because it is annotated, the web deployment descriptor metadata artifacts will be created |
| during a build. The servlet annotated tags will be parsed and the xdoclet engine will generate the |
| web.xml servlet nodel. We can verify their existence by looking in the project explorer "Servlets" |
| section for the HelloWorld web application. The XDocletHelloWorld servlet and servlet mapping should now |
| show up.<br> |
| </li> |
| <li>The servlet java class should also show up with the methods defined that were selected in the |
| wizard. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image15.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Double click on the XDocletHelloWorld class in the Project Explorer. Add the following code to |
| the doGet method, as well as an import statement for java.io.PrintWriter:<br> |
| <p>PrintWriter out = new PrintWriter(System.out); <br> |
| out = response.getWriter(); <br> |
| out.println("Hello world!");<br> |
| out.close();</p> |
| </li> |
| <li>Save and close the editor.</li> |
| </ol> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"><br> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"><br> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| bgcolor="#0080c0" |
| align="left" |
| colspan="2"><b><font |
| face="Arial,Helvetica" |
| color="#ffffff">Running the Servlets on the Tomcat Server </font></b></td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"><br> |
| </td> |
| </tr> |
| <tr> |
| <td |
| valign="top" |
| align="right"> </td> |
| <td valign="top"> |
| <ol> |
| <li>Select the "HelloWorld" web project. Right click and select Run As->Run on Server... <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image16.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Choose to manually define a new Server. Select the Apache Tomcat version you have installed. |
| Hit next. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image17.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Ensure the Helloworld.war is added to the server. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image18.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Hit Finish.</li> |
| <li>Make sure if you double click the Tomcat server instance that the HelloWorld project is |
| configured correctly. Edit and restart. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image21.jpg" |
| alt=""> <br> |
| <br> |
| </li> |
| <li>Wait for the Tomcat server to start and the web browser to open. Type |
| http://localhost:8080/HelloWorld/HelloWorld in the address window. Hit enter. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image19.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| <li>Now try the annotated servlet, http://localhost:8080/HelloWorld/XDocletHelloWorld. <br> |
| <br> |
| <img |
| src="images/ServletScenario_Image20.jpg" |
| alt=""><br> |
| <br> |
| </li> |
| </ol> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </body> |
| </html> |