berto77
berto77

Reputation: 895

getting servlet param values from filter

I am sending a post request from a form to a redirect servlet. The servlet then write a form to its response (getWriter) object. This form contains a number of hidden fields. I use javascript to submit this form (the javascript is written to the response object as well). The target of this form is another servlet.

Now, I'm writing a filter to intercept the hidden parameters I'm sending over to the other servlet (on another server). However when I do: String[] values = req.getParameterValues(name);

I get no values for any of the parameters I put in the string "name". I cannot change the architecture of the code (not mine). I just need to get the parameters sent by the first servlet in my filter, but I keep getting null. Any help is greatly appreciated.

my first servlet code:

    PrintWriter out = response.getWriter();
    out.println("<html>");
    out.println("<head><title>redirectServlet</title></head>");

    out.println("<body>");
    out.println("<form name=\"go\" method=\"post\" action=\"http://" + 
                remotehost + "/somerep/someservlet?\">");



    out.println("<input type=hidden name=userid value=" + conn + "> ");

    out.println("<input type=hidden name=paramform value=no> ");
    out.println("<input type=hidden name=nonblocksql value=no> ");
    out.println("<input type=hidden name=recursive_load value=no> ");
    out.println("<input type=hidden name=job_seq_id value=" + jobId + ">");
    out.println("<input type=hidden name=destype value=cache> ");
    out.println("<input type=hidden name=desformat value=pdf> ");
    out.println("</form> ");

    out.println("<script language=\"JavaScript\" type=\"text/javascript\"> ");
    out.println("document.getElementById('go').submit();");
    out.println("</script>");

    out.println("</body>");
    out.println("</html>");

Upvotes: 0

Views: 1314

Answers (1)

Matt Ball
Matt Ball

Reputation: 359776

There is no element with ID go in that generated HTML. Change

out.println("<form name=\"go\" method=\"post\" action=\"http://" + 
// to
out.println("<form id=\"go\" method=\"post\" action=\"http://" + 

Upvotes: 1

Related Questions