1

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>
Mofi
  • 46,139
  • 17
  • 80
  • 143

0 Answers0