ArrayList
JSPでクラスに基づいて作成しますProductData
。このリストは、ショッピングカートとして表されます。
ArrayList<ProductData> cartList = new ArrayList<ProductData>();
ProductData data = new ProductData(productId, productName, productPrice, productAmmount);
cartList.add(data);
その後、ArrayList
JSPに保存しています。このページを離れるときに、迷子にsession
ならないようにするためです。ArrayList
session.setAttribute("cartList", cartList);
他のセクションでは、を取得してのsession
として変換し
ます(セッションがnullかどうかを確認します)ArrayList
ProductData
ArrayList<ProductData> cartList = session.getAttribute("cartList") == null ? new ArrayList<ProductData>() : (ArrayList<ProductData>)session.getAttribute("cartList");
それは最初の実行でうまく機能します。ただし、ページのコードを変更するたびに(そして、クラス宣言を変更しない場合)、サーブレットはエラーを発生させます。java.lang.ClassCastException: org.apache.jsp.MCPatisserie.cart_jsp$1ProductData
私の質問は、これはclass
Javaサーブレットページに実装するための良い方法ですか?このエラーはサーブレットページの再コンパイルが原因で、session
オブジェクトが私のものと一致しなくなりましたArrayList
か?前もって感謝します。:)