I have an HTML form in a JSP file in my WebContent/jsps folder. I have a servlet class servlet.java in my default package in src folder. In my web.xml it is mapped as /servlet.
I have tried several URLs in action attribute of the HTML form:
<form action="/NewServlet">
<form action="/NewServlet.java">
<form action="/src/NewServlet.java">
<form action="../NewServlet.java">
I have also updated web.xml
:
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>NewServlet</servlet-name>
<servlet-class>NewServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>NewServlet</servlet-name>
<url-pattern>/NewServlet</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
But none of those work. They all keep returning a HTTP 404 error like below: The requested resource is not available. I'm using netbeans.
Why is it not working?
This is my servlet code:
public class NewServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
NameHandler myClass = new NameHandler();
String head="<html><body>";
String end="</body></html>";
String button = request.getParameter("button1");
String t=request.getParameter("textp");
if ("SUBMIT".equals(button)) {
if( myClass.isfound(t))
{
out.println(head+" <h1>"+t+"</h1>"+end);
}
}
request.getRequestDispatcher("/WEB-INF/response.jsp").forward(request, response);
}
}
And this is my HTML code:
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<h1 style="background-image:url(320px-Draft01_wkp.png);font-size:300%;color: white;">GetaDictionary.com</h1>
<form action="${pageContext.request.contextPath}/NewServlet" method="post">
<input type="text" name="name" id="textp"/>
<input type="submit" name="button1" id="Button1" value="SEARCH" />
</form>
</body>
</html>