Tomcat tutorail
-
Upload
supratim-ray -
Category
Internet
-
view
60 -
download
0
Transcript of Tomcat tutorail
Tomcat and Servlets
Haifeng Liu
Tutorial Overview
Tomcat OverviewSetting Up and Running Tomcat on CDFInstalling and Running Servlets on CDFSetting up Sysdeo Eclipse Tomcat Launcher pluginFAQ?
Tomcat Overview
Tomcat is the servlet containerHistory:
ASF: JServ – performance Sun: Servlet Engine -- specification
Requirements and Quality Goals:Strict adherence to Sun’s JSP/Servlet specification, Interoperability, Modifiability, Performance, Scalability, High-Availability, Security, …
--- Jakarta Tomcat
Tomcat System
Setting Up Tomcat on CDF
Status: Installed with user privileges in /u/csc309h/lib/brad/tomcat-5.0.27
Step 1 – go to website, read instructionshttp://www.cs.toronto.edu/~delara/courses/csc309/resources/csc
309guide.html#WebServerStep 2 – download the tar file tomcat.tar.gzStep 3 – untar it (tar xvz tomcat.tar.gz) and copy the files into a working directory which is refered as
e.g. ~/csc309/Inside tomcat:
Bin, conf, logs, webapps, work
Start Tomcat Server
Step 1 -- cd ~/csc309/tomcat/binStep 2 -- Run the script start.sh (may need to chmod a+x *.sh ) ./start.shStep 3 -- Enter the port number. Tomcat will use 3 ports, the number entered and the next two (e.g., if you are assigned port 32000, tomcat will use 32000, 32001, 32002). Step 4 – check /bin/ps -ef | grep your_user_idStep 5 – view http://localhost:your_port_number
Stop Tomcat Server
To stop your server, run bin/stop.sh. Always remember to stop your server before logging off CDF.
Directory Structure
Bin – Startup/shutdown scripts and other useful files. Conf – Configuration files, including modules.xml, server.xml, and a number of apps-<name>.xml. Logs – event log file for each dayWebapps – web application filesWok -- intermediate files (such as compiled JSP files) during its work. If you delete this directory while Tomcat is running you will not be able to execute JSP pages!
Installing and Compiling Servlets
Step 1 -- Download the sample files, untar it, put into webappsStep 2 -- Compile the Java class
Include the following jar file in your CLASSPATH /u/csc309h/lib/tomcat-5.0.27/common/lib/servlet-api.jar. setenv CLASSPATH ${CLASSPATH}: /u/csc309h/lib/tomcat-5.0.27/common/lib/servlet-api.jarcd ~/csc309/tomcat/webapps/csc309/WEB-INF/classesCompile the servlet javac HelloWorld.java
Step 3 -- Start Tomcat Step 4 – Start Browser: http://127.0.0.1:yourPortNumber/csc309/servlet/HelloWorld
HelloWorld Interface
Adding a Servlet to a Web ApplicationStep 1 – Download PrintEnv.java and copy it to ~/csc309/tomcat/webapps/csc309/WEB-INF/classesStep 2 -- Compile PrintEnv.javaStep 3 – Add the following entries to the application descriptor located at ~/csc309/tomcat/webapps/csc309/WEB-INF/web.xml. <servlet>
<servlet-name>PrintEnv</servlet-name> <servlet-class>PrintEnv</servlet-class>
</servlet> <servlet-mapping>
<servlet-name>PrintEnv</servlet-name> <url-pattern>/servlet/PrintEnv</url-pattern>
</servlet-mapping>Step 4 -- Restart Tomcat Step 5 – Open browser to http://127.0.0.1:yourPortNumber/csc309/servlet/PrintEnv
PrintEnv Interface
Sysdeo Eclipse Tomcat Launcher plugin
Starting, stopping and restarting Tomcat 4.x, 5.0.x, 3.3 Registering Tomcat process to Eclipse debugger Creating a WAR project (wizard can update server.xml file) Adding Java Projects to Tomcat classpathSetting Tomcat JVM parameters, classpath and bootclasspathExporting a Tomcat project to a WAR File Choosing Tomcat configuration file Capability to use a special Tomcat classloader to have classes in several java projects loaded at the same classloader level than classes in a Tomcat project, see readmeDevLoader.html (Thanks Martin Kahr)
Software Prerequisite
Tomcat Server –”http://jakarta.apache.org/tomcat/”Eclipse 3.X –“http://www.eclipse.org/downloads/index.php ”Sysdeo Eclipse tomcat Launcher plugin --”http://www.sysdeo.com/eclipse/tomcatPlugin.html”
Setup Tomcat in Eclipse
Enable tomcatGo to the menu "Window-> Preferences" go to "Tomcat" and select your Tomcat version adjust the field "Tomcat Home" to point to the install directory
Add a new userscroll down the menu point "Tomcat" and click the item "Tomcat Manager App" add a username and a password click on "Add user to tomcat-users.xml"
Test Start Tomcat Server
HelloWorld ExampleOpen a new project
select "Tomcat Project"..., click Next buttoncall our new project "Hello World" adjust URI http://localhost:8080/HelloWorld/hello
create a new class named HelloServlet in the directory WEB-INF/srccreate the file web.xml in the directory WEB-INF (Note: not in WEB-INF/src!!!) Start browser "http://localhost:8080/HelloWorld/hello"
HelloServlet
import java.io.*;import javax.servlet.http.*;import javax.servlet.*;public class HelloServlet extends HttpServlet {
public void doGet (HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException {
PrintWriter out = res.getWriter();out.println("Hello, Brave new World!");out.close();
}}
Web.xml
<!DOCTYPE web-app PUBLIC'-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN''http://java.sun.com/dtd/web-app_2_3.dtd'>
<web-app><servlet>
<servlet-name>hello</servlet-name><servlet-class>HelloServlet</servlet-class>
</servlet><servlet-mapping>
<servlet-name>hello</servlet-name><url-pattern>/hello</url-pattern>
</servlet-mapping></web-app>