Friday, May 7, 2010

Servlet Example1:-Eclipse and JBoss

Html +Servlet (controller) +Model class without JSP (View)

STEP 1: Create a “dynamic web” project named “FirstSample”


STEP 2: Create a new package named” com.examp” under Src or Source Folder


STEP 3: Create a new html file named “Form.html” under WebContent Folder

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; ">
<title>Insert title here</title>
</head>
<body>
<h1 align="center">Beer Selection Page</h1>
<form method="POST" action="Hello">
Select any color<p>
Color:
<select name="color" size="1">
<option value="light"> light </option>
<option value="amber"> amber </option>
<option value="brown"> brown </option>
<option value="dark"> dark </option>
</select>
<br><br>
<center>
<input type="SUBMIT">
</center>
</form>
</body>
</html>


STEP 4: Create a new Servlet java class named “ServletController.java” under Src folder

package com.examp;

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.*;
import java.util.List;

import java.util.*;

public class ServletController extends HttpServlet {
public void doPost(HttpServletRequest request,HttpServletResponse response)throws IOException, ServletException {

String c = request.getParameter("color");
ColorListModel be = new ColorListModel();
List<String> result = be.getBrands(c);

response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("Color selection<br>");
out.println("<br>Selected color =" + c);
Iterator<String> it = result.iterator();
while(it.hasNext()) {
out.print("<br>: " + it.next());
}
}
}
STEP 5: Create a new java class named “ColorListModel.java” under Src folder. This type of classes is considered as Models which can be extremely complicated. They often involve connections to legacy databases, and calls to complex business logic

package com.examp;
import java.util.*;
public class ColorListModel {
public List<String> getBrands(String color) {
List<String> brands = new ArrayList<String>();
if (color.equals("amber")) {
brands.add("Amber1");
brands.add("Amber2");
}
else {
brands.add("black not amber");
brands.add("White not amber ");
}
return(brands);
}
}

STEP 6: Include below code in a Xml file “web.xml” under WEB-INF folder

<welcome-file-list>
<welcome-file>Form.html</welcome-file>
</welcome-file-list>

<servlet>
<servlet-name>ServletController</servlet-name>
<servlet-class>com.examp.ServletController</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletController</servlet-name>
<url-pattern>/Hello</url-pattern>
</servlet-mapping>

STEP 7: Export the project” FirstSample” into a war file named ” FirstSample.war” and place it in the deploy folder of JBOSS server


STEP 8:To see the output use this url ” http://localhost:8080/ FirstSample /Form.html”
Here FirstSample is the .war file name and Form.html is specified in the <welcome-file>of web.xmlfile


Step 9: if selected color is amber then we will get below output
Color selection
Selected color =amber
: Amber1
: Amber2

No comments:

Post a Comment