Here is a simple JSP – Servlet example with step-by-step instructions. I’ll demonstrate how to retrieve request parameters in JSP – Servlet example.
Here are the steps we are going to perform:
- Open Eclipse IDE.
- Create new Dynamic Web Project CrunchifyJSPServletExample.
- Create HelloCrunchify.java file extends HttpServlet (List of all 200 Java Examples).
- Create Crunchify.jsp file.
- web.xml file (deployment descriptor file).
- If you don’t see web.xml file then find solution here.
- Add and Run project on Tomcat Web Server.
Here is a complete project structure:
Step-1
Create HelloCrunchify.java file
package com.crunchify.jsp.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.PrintWriter;
/**
* @author Crunchify.com
*/
public class HelloCrunchify extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// reading the user input
String username = request.getParameter("username");
String password = request.getParameter("password");
PrintWriter out = response.getWriter();
out.println (
"<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" +" +
"http://www.w3.org/TR/html4/loose.dtd\">\n" +
"<html> \n" +
"<head> \n" +
"<meta http-equiv=\"Content-Type\" content=\"text/html; " +
"charset=ISO-8859-1\"> \n" +
"<title> Crunchify.com JSP Servlet Example </title> \n" +
"</head> \n" +
"<body> <div align='center'> \n" +
"<style= \"font-size=\"12px\" color='black'\"" + "\">" +
"Username: " + username + " <br> " +
"Password: " + password +
"</font></body> \n" +
"</html>"
);
}
}
Another must read:
- How to Run Java Program Automatically on Tomcat Startup
- How to use AJAX, jQuery in Spring Web MVC (.jsp) – Example
Step-2
Create Crunchify.jsp file:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<style type="text/css">
body {
background-image:
url('https://crunchify.com/wp-content/uploads/2013/03/Crunchify.bg_.300.png');
}
</style>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Crunchify JSP Servlet Example</title>
</head>
<body>
<div align="center" style="margin-top: 50px;">
<form action="CrunchifyServlet">
Please enter your Username: <input type="text" name="username" size="20px"> <br>
Please enter your Password: <input type="text" name="password" size="20px"> <br><br>
<input type="submit" value="submit">
</form>
</div>
</body>
</html>
Step-3
Update web.xml file:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<display-name>CrunchifyJSPServletExample</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>Hello</servlet-name>
<servlet-class>com.crunchify.jsp.servlet.HelloCrunchify</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Hello</servlet-name>
<url-pattern>/CrunchifyServlet</url-pattern>
</servlet-mapping>
</web-app>
Step-4
Deployed and Run CrunchifyJSPServletExample on Tomcat.
Step-5
Point your URL to http://localhost:8080/CrunchifyJSPServletExample/Crunchify.jsp
Step-6
Checkout Result. Your URL should look like this: http://localhost:8080/CrunchifyJSPServletExample/CrunchifyServlet?username=crunchify&password=Password
Note that the server does not recognize changes in “web.xml” except if you restarted, or started, the server.




