File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Servlets and the fly likes passing parameter from jsp to servlet Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Servlets
Bookmark "passing parameter from jsp to servlet" Watch "passing parameter from jsp to servlet" New topic

passing parameter from jsp to servlet

Pun Pun Mishra

Joined: Apr 03, 2006
Posts: 2
hi all,
i want to pass ArrayList from jsp page to servlet.I am not able to pass this variable through can i pass that one . if i am setting it inoto session it is accessible in servlet but i don't want to put much data in session.
it is very urgent.
can any one suggest me any solution for this problem
Thanks in advance
Vishnu Prakash
Ranch Hand

Joined: Nov 15, 2004
Posts: 1026

I am not able to pass this variable through request

Why aren't you able to use request attributes? Are you using Redirect mechanism?
[ April 03, 2006: Message edited by: Vishnu Prakash ]

Servlet Spec 2.4/ Jsp Spec 2.0/ JSTL Spec 1.1 - JSTL Tag Documentation
Pun Pun Mishra

Joined: Apr 03, 2006
Posts: 2
no i am setting like this
recordList is my ArrayList.but this recordList i am not able to get in the servlet by using request.getAttribute("result");null value i am getting.
what should i do to pass this varibale from jsp to servlet b'coz from servlet to jsp it is possible but vice varsa is not happening
xu gang

Joined: Feb 09, 2006
Posts: 1
use RequestDispatcher pass request to next page .

RequestDispatcher rd = request.getRequestDispatcher("***.jsp");
rd.forward(request, response);
ak pillai
Ranch Hand

Joined: Feb 11, 2006
Posts: 288
You need to understand the HTTP paradigm first. You can set a request attribute in a servlet and then can use it in a JSP, but you cannot do it from JSP to Servlet, because the first request goes out of scope and the servlet will be receiving a new request.

The JSPs were created to get rid of the unsightly and unmaintainable out.println("<html>..</html>"). Your browser can understand only HTML. So when you make a request no-1 from the browser, your request parameters are passed to your servlet in the web container. The servlet, controls the flow and does some stuff and finally forwards the request to your JSP. The JSP engine converts the JSP to a servlet with all the out.println(<html></html> statements. finally output html sent back to the client from the _jsp_converted servlet and your request no 1 is complete (request/response). Any attributes you have set in the JSP have gone out of scope now. When the request no 2 invoked the same process repeats. If you set it in a session scope then it will be available until the session is invalidated.

Hope it explains it.

java j2ee job interview questions with answers | Learn the core concepts and the key areas
Christophe Verré

Joined: Nov 24, 2005
Posts: 14688

You either put it in the session, or rewrite your JSP page.
There may be some problem with your logic.
Why passing an array from JSP, which is a view, to a servlet ?
The servlet should use the data posted by the view.
Correcting this problem first may solve the whole thing.

[My Blog]
All roads lead to JavaRanch
Vishnu Prakash
Ranch Hand

Joined: Nov 15, 2004
Posts: 1026

but you cannot do it from JSP to Servlet,

It is possible, provided your JSP Page doesn't do anything(doesn't output anything to the client) else other than just forwarding the request to the destination servlet using RequestDispatcher.

But forwarding from a jsp to servlet is NOT considered best practice as JSP is meant for presentation and NOT for application processing.
I agree. Here's the link:
subject: passing parameter from jsp to servlet
It's not a secret anymore!