リストが維持されるステートフル セッション Bean があります。
@Stateful
public class CartDAO{
private List<ShoppingCart> tempCart;
public void add(ShoppingCart shoppingCart){
tempCart.add(shoppingCart);
}
public List<ShoppingCart> getCart(){
return tempCart;
}
@PostConstruct
public void init(){
tempCart = new ArrayList<>();
}
}
カートに追加する Controller1:
@Named
@SessionScoped
public class Controller1 implements Serializable {
@EJB
CartDAO cartDao;
public String addToShoppingCart() {
cartDao.add(shoppingCart);
}
}
では、別のカートからリストに追加されたアイテムを取得できますか?
@Named
@SessionScoped
public class Controller2 implements Serializable {
@EJB
CartDAO cartDao;
public String getShoppingCart() {
System.out.println(cartDao.getCart());//returns null
}
}
明らかに、上記のコードは null を返します。
別のコントローラーからリストを取得するにはどうすればよいですか。どんな助けでも大歓迎です。