30/09/2018, 17:36
Khi 1 action gọi 1 action, làm sao để action sau có thể lấy được dữ liệu do action trước forward?
KHI 1 ACTION GỌI 1 ACTION, LÀM SAO ĐỂ ACTION SAU CÓ THỂ LẤY ĐƯỢC DỮ LIỆU DO ACTION TRƯỚC FORWARD?
Có 1 trang jsp login => CheckLoginAction
CheckLoginAction sử dụng cái AccountForm như sau:
private String username, password;
private int permission, idEmp;
Khi CheckLoginAction gọi hàm checkLogin() thì sẽ lấy trong CSDL idEmp và permission rồi set giá trị cho 2 thuộc tính này luôn.
Sau đó CheckLoginAction sẽ gọi tới 1 trang HomeAction (chứ không phải là trang jsp như bình thường)
HomeAction sẽ có Form là: private int idEmp, salary;
private String name, date, sex, address, phone, nameDepartment, status;
Vấn đề muốn hỏi ở đây là làm sao để lấy được idEmp của CheckLoginAction khi chuyển qua HomeAction?
Cứ tưởng tưởng công việc ở đây là HomeAction lấy idEmp từ CheckLoginAction, sau đó vào CSDL lấy thông tin của employee tương ứng ra, forward cho trang home.jsp
Nói 1 hồi không biết có hiểu vấn đề mình đang hỏi không
Bài liên quan
@PhoPhaoHoa sửa lại tiêu đề đi. Đừng để all caplock như vậy.
mình không biết về struts.
stackoverflow.com
mình mới tìm trên google với từ khóa “struts 1.x: how to transfer value of variable from action to action”
thấy cái link này
Java Struts 1: forward from action to action. Passing data through ActionForms
đọc sơ qua thấy nói dùng class ActionRedirect .
hi vọng giúp ích được cho bạn
Thường trường hợp login như vậy, sẻ dùng session nhé bạn : https://struts.apache.org/docs/simplelogin-with-session.html
Cái mình đnag làm là struts 1 bạn à. Session mình có quy định trong struts_config rồi.
Bạn có thể sử dụng session bằng cách sử dụng setSessionAttribute với name tương ứng.
Vì khi bạn chuyển hướng từ CheckLoginAction sang HomeAction thì nó vẫn thuộc cùng scope=“session” mà bạn sử dụng khi định nghĩa struts_config nên mình nghĩ session sử dụng không có vấn đề gì