セッションに保存されている ArrayList にオブジェクトを追加しようとしています。
オブジェクトが追加されていないようです。
以下のコードを確認して、これに対する正しい答えを提案してください。
私のデバッガーをデバッグしている間、このコードまで進みbooks.add(book);
、残りのコードをスキップします。私は問題がここにあることを知っていますbooks.add(book);
。本の詳細が arraylist に追加されませんbooks
。
AddBookToSession.java
public class AddBookToSession extends ActionSupport {
Bookdetails book=new Bookdetails();
List<Bookdetails> books = new ArrayList<Bookdetails>();
BookdetailsDAO dao = new BookdetailsDAO();
Map session = ActionContext.getContext().getSession();
public String execute()
{
HttpServletRequest request = ServletActionContext.getRequest();
String bookid = request.getParameter("bid");
books = (List) session.get( BillTransactionBooksConstants.BOK );
for(int i=1;i<=1;i++)
{
book = dao.listBookDetailsById(Integer.parseInt(bookid));
books.add(book); //problem is here obj book is not adding into books list
books = new ArrayList<Bookdetails>();
System.out.println("---------------Bookid-"+book);
}
....................
...............
struts.xml
<package name="testwithrowselect" extends="struts-default" >
<action name="InsertbooksToSession" class="v.esoft.actions.booktransaction.AddBookToSession">
<result name="success">/jspHomepage/bookstransaction/shortBill.jsp</result>
</action>
</package>