Javascript in servlet

Discussion in 'JavaScript' started by computerzworld, Apr 24, 2007.

  1. #1
    Hi. I have tried to insert javascript in servlet. But it is not validating my form. I am giving my code along with this message. Please tell me what should I do so that I can be able to validate my page. Thanks in advance.


    import java.io.*;
    import java.net.*;

    import javax.servlet.*;
    import javax.servlet.http.*;

    /**
    *
    * @author administrator
    * @version
    */
    public class login extends HttpServlet {

    /** Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
    * @param request servlet request
    * @param response servlet response
    */
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out = response.getWriter();

    out.println("<html>");
    out.println("<head>");

    out.println("<script language=javascript>");
    out.println("function val() {");


    out.println("if(document.form.uname.value.length <1) {");

    out.println("alert(Enter your first name);");
    out.println("document.form.uname.focus();");
    out.println("document.form.uname.style.background=pink;");

    out.println("return false;");

    out.println("}");
    out.println("if(document.form.pass.value.length <1) {");

    out.println("alert(Enter password);");
    out.println("document.form.pass.focus();");
    out.println("document.form.pass.style.background=pink;");

    out.println("return false;");

    out.println("}");
    out.println("return true;");
    out.println("}");

    out.print("</script>");
    out.println("<title>Servlet login</title>");
    out.println("</head>");
    out.println("<body bgcolor=#dddddd>");
    out.println("<form name=form action=http://localhost:8084/servlet/val method=get onSubmit=return val()>");
    out.println("<h1><p align=center> Consumer Electronics System</p><hr border=10 /></h1>");
    out.println("<h3><p align=center>Administrator Login</p></h3>");
    out.println("<p align=center>&nbsp;</p>");
    out.println("<p align=center><strong>User Name:</strong>");
    out.println("<input name=uname type=text /></p>");
    out.println("<p align=center><strong>Password:&nbsp;&nbsp;</strong>");
    out.println("<input name=pass type=password />");
    out.println("</p>");
    out.println("<p align=center>");

    out.println("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;");


    out.println(" <input type=submit name=Submit value=Submit />");
    out.println("<input name=Cancel type=reset id=Cancel value=Cancel />");
    out.println("</p>");
    out.println("</form><br><br><h3>");
    out.println("<p align=center>");
    out.println("<a href=http://localhost:8084/servlet/signup>Sign up</a>");
    out.println("</p></h3>");
    out.println("</body>");
    out.println("</html>");

    out.close();
    }

    // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
    /** Handles the HTTP <code>GET</code> method.
    * @param request servlet request
    * @param response servlet response
    */
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    processRequest(request, response);
    }

    /** Handles the HTTP <code>POST</code> method.
    * @param request servlet request
    * @param response servlet response
    */
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    processRequest(request, response);
    }

    /** Returns a short description of the servlet.
    */
    public String getServletInfo() {
    return "Short description";
    }
    // </editor-fold>
    }
     
    computerzworld, Apr 24, 2007 IP
  2. nico_swd

    nico_swd Prominent Member

    Messages:
    4,153
    Likes Received:
    344
    Best Answers:
    18
    Trophy Points:
    375
    #2
    Java is not JavaScript.
     
    nico_swd, Apr 24, 2007 IP
  3. computerzworld

    computerzworld Active Member

    Messages:
    214
    Likes Received:
    3
    Best Answers:
    0
    Trophy Points:
    58
    #3
    that i know but this is the servlet prg and i want to insert javascript in it.
     
    computerzworld, Apr 24, 2007 IP
  4. ajsa52

    ajsa52 Well-Known Member

    Messages:
    3,426
    Likes Received:
    125
    Best Answers:
    0
    Trophy Points:
    160
    #4
    Maybe is because there is a misspell here:

    
    out.println("}");
    [COLOR="Red"]out.print("</script>");[/COLOR]
    out.println("<title>Servlet login</title>");
    
    Code (markup):
    It should be:
    
    out.println("}");
    [COLOR="Green"]out.println("</script>");[/COLOR]
    out.println("<title>Servlet login</title>");
    
    Code (markup):
     
    ajsa52, Apr 24, 2007 IP
  5. computerzworld

    computerzworld Active Member

    Messages:
    214
    Likes Received:
    3
    Best Answers:
    0
    Trophy Points:
    58
    #5
    i have tried this one but it didn't work............
    now what should i do?
     
    computerzworld, Apr 24, 2007 IP
  6. ajsa52

    ajsa52 Well-Known Member

    Messages:
    3,426
    Likes Received:
    125
    Best Answers:
    0
    Trophy Points:
    160
    #6
    When you said "...But it is not validating my form...",
    is it failing on val() function on client side, or on servlet/signup server side ?

    And what kind of error are you getting ?
     
    ajsa52, Apr 24, 2007 IP
  7. computerzworld

    computerzworld Active Member

    Messages:
    214
    Likes Received:
    3
    Best Answers:
    0
    Trophy Points:
    58
    #7
    it is client side scripting and it doesn't give any error but it doesn't validate my form fields and it directly goes to second page and on the second page I have put server side validation using servlet.
     
    computerzworld, Apr 24, 2007 IP
  8. ajsa52

    ajsa52 Well-Known Member

    Messages:
    3,426
    Likes Received:
    125
    Best Answers:
    0
    Trophy Points:
    160
    #8
    Well, your generated javascript has multiple errors.
    Mainly because it doesn't have quotes around strings. Examples:
    =pink instead of ='pink'
    Enter your first name instead of 'Enter your first name'
    etc...

    But maybe the most important is this:
    replace:
    <input type=submit name=Submit value=Submit/>
    with
    <input type='submit' name='Submit' value='Submit' onclick='return val();'/>

    And your sentence:
    out.println("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;");
    it's really old fashioned, now it's simpler with some CSS span or div
    .
     
    ajsa52, Apr 24, 2007 IP