nickl1
asked on
Help on Sessions
I have several forms that I am using to collect information as a part of a shopping cart (billing, shipping, payment, etc.). I want to be able to submit each form and temporarily store the information. Then I want to be able to display it several pages later as a confirmation page, to verify it is all correct.
From what I can tell there appears to be two ways of potentially handling this. My question is why would I use one of the following approaches over the other?
FIRST APPROACH
[page1.jsp]
<form method="post" action="page2.jsp" name="myForm">
<input type="text" name="firstname" size="30">
<input type="text" name="lastname" size="30">
<input type="submit" value="Submit">
</form>
[page2.jsp]
<% HttpSession user = request.getSession(true);
user.setAttribute("fname", request.getParameter("firs tname"));
user.setAttribute("lname", request.getParameter("last name"));
%>
[page3.jsp]
<% HttpSession user = request.getSession(true); %>
<%= user.getAttribute("fname") %>
<%= user.getAttribute("lname") %>
-------------------------- ---------- ---------- ---------- --------
SECOND APPROACH
[MyBean.java]
package myPackage;
public class MyBean {
private String fname;
private String lname;
public MyBean() {
name = "";
}
public String getFname() {
return fname;
}
public void setFname(String x) {
fname = x;
}
public String getLname() {
return lname;
}
public void setLname(String y) {
lname = y;
}
}
[page1.jsp]
<form method="post" action="page2.jsp" name="myForm">
<input type="text" name="firstname" size="30">
<input type="text" name="lastname" size="30">
<input type="submit" value="Submit">
</form>
[page2.jsp]
<jsp:useBean class="myPackage.MyBean " id="firstBean" scope="session" />
String firstname = request.getParameter("firs tname");
String lastname = request.getParameter("last name");
<jsp:setProperty name="firstBean" property="fname" value="firstname" />
<jsp:setProperty name="firstBean" property="lname" value="lastname" />
[page3.jsp]
<jsp:useBean class="myPackage.MyBean " id="firstBean" scope="session" />
<jsp:getProperty name="firstBean" property="fname" />
<jsp:getProperty name="firstBean" property="lname" />
From what I can tell there appears to be two ways of potentially handling this. My question is why would I use one of the following approaches over the other?
FIRST APPROACH
[page1.jsp]
<form method="post" action="page2.jsp" name="myForm">
<input type="text" name="firstname" size="30">
<input type="text" name="lastname" size="30">
<input type="submit" value="Submit">
</form>
[page2.jsp]
<% HttpSession user = request.getSession(true);
user.setAttribute("fname",
user.setAttribute("lname",
%>
[page3.jsp]
<% HttpSession user = request.getSession(true); %>
<%= user.getAttribute("fname")
<%= user.getAttribute("lname")
--------------------------
SECOND APPROACH
[MyBean.java]
package myPackage;
public class MyBean {
private String fname;
private String lname;
public MyBean() {
name = "";
}
public String getFname() {
return fname;
}
public void setFname(String x) {
fname = x;
}
public String getLname() {
return lname;
}
public void setLname(String y) {
lname = y;
}
}
[page1.jsp]
<form method="post" action="page2.jsp" name="myForm">
<input type="text" name="firstname" size="30">
<input type="text" name="lastname" size="30">
<input type="submit" value="Submit">
</form>
[page2.jsp]
<jsp:useBean class="myPackage.MyBean " id="firstBean" scope="session" />
String firstname = request.getParameter("firs
String lastname = request.getParameter("last
<jsp:setProperty name="firstBean" property="fname" value="firstname" />
<jsp:setProperty name="firstBean" property="lname" value="lastname" />
[page3.jsp]
<jsp:useBean class="myPackage.MyBean " id="firstBean" scope="session" />
<jsp:getProperty name="firstBean" property="fname" />
<jsp:getProperty name="firstBean" property="lname" />
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.