As mentioned below I have made changes to the code which looks like following example, but it doesn't show firstname and lastname in JSP:
Servlet code:
//.... HttpSession session = request.getSession(); Person person = (Person) session.getAttribute("person"); if (person == null) { person = new Person(); } person.setNewId(newId); person.setFirstName(firstName); person.setLastName(lastName); session.setAttribute("person", person); RequestDispatcher rd = request.getRequestDispatcher("jsp Address"); rd.forward(request, response);
Person Bean code:
private int newId; private String firstName; private String lastName; // Default Constructor public Person() {} public Person(int newId, String firstName, String lastName) { setNewId(newId); setFirstName(firstName); setLastName(lastName); } //Getter and Setter Methods public int getNewId() {return newId;} public void setNewId(int newID) {this.newId = newID;} public String getFirstName() {return firstName;} public void setFirstName(String FirstName) {this.firstName = FirstName;} public String getLastName() {return lastName;} public void setLastName(String LastName) {this.lastName = LastName;}
And in JSP code:
<jsp:useBean id="person" type="app.models.Person" scope="session"> <jsp:getProperty name="person" property="firstName" /> <jsp:getProperty name="person" property="lastName" /> </jsp:useBean>
Output of this JSP page: none
Expected output: firstName lastName
Questions:
1. How can i pass parameters from Servlets to JSP via Bean with help of Session? 2. Is there a better way to do this code? I am using MVC architecture.