I am a newbie in servlet programming.
The following is my sample servlet code
Sample.Java
public class Sample extends HttpServlet {
protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
res.setContentType("text/html");
PrintWriter pw=res.getWriter();
String name=req.getParameter("name");//will return value
pw.println("Welcome "+name);
pw.close();
}
}
Web.xml
<web-app>
<servlet>
<servlet-name>sampleservlet</servlet-name>
<servlet-class>Sample</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>sampleservlet</servlet-name>
<url-pattern>/Sample</url-pattern>
</servlet-mapping>
</web-app>
Index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<form action="Sample" method="get">
Enter your name<input type="text" name="name"><br>
<input type="submit" value="login">
</form>
</body>
</html>
My problem
When I right click on my project and then click Run as -> Run on server
, I select the server, it asks me for to select a server and then I select the server to run. In the eclipse window a browser window is opened which has the address URL as http://localhost:8080/Sample/
When I click on login
it gives me an error like this,
HTTP Status 404 - /Sample/welcome
type Status report
message /Sample/welcome
description The requested resource is not available.
Apache Tomcat/7.0.62
Screenshot
Why am I getting an error like this ?
Other details
Server:apache-tomcat-7.0.62 IDE: Eclipse Java EE kepler
Steps I tried to solve the problem
I tried these,
Result
I did not see the .class
files in WEB-INF
folder.
Result
In this path "tomcat7\work\Catalina\localhost\your app",the work
folder was empty.
Please let me know if I need to post any more details.
Directory structure from IDE
Your code does work for me in tomcat 7 and eclipse. Perhaps your index.html is not the same as the one your are posting because it's aimnig at Sample/welcome instead of Sample/Sample.
Tips:
<Context docBase="Sample" path="/Sample" reloadable="false" source="org.eclipse.jst.jee.server:Sample"/></Host>
If you don't double check permisions in those folders. Add your tomcat7 server from the start again.If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With