ショッピング カートとして機能するステートフル EJB があります。2 つのサーブレットがあり、そのうちの 1 つはショッピング カートに商品を追加するために使用されます。もう 1 つは、ショッピング カートの情報を取得するために使用されます。カート内の商品と商品の数量。
ショッピング カートは、AddToCartServlet の場合と同様に、リクエスト間で状態を保持します。ただし、ShoppingCartInfoServlet を使用すると、ショッピング カートに複数の製品があるにもかかわらず、ショッピング カート内の製品のリストが 0 になります。そのため、ShoppingCartInfoServlet にいるときに同じ EJB を取得していないようです。@Stateful とアノテーションを付けたのと同じ EJB であるはずです。
@Stateful
public class ShoppingCart {
List<Product> products;
...
}
public class AddToCartServlet extends HttpServlet {
@EJB
ShoppingCart shoppingCart;
...
}
public class ShoppingCartInfoServlet extends HttpServlet {
@EJB
ShoppingCart shoppingCart;
...
}