如何避免多次调用@PostConstruct

时间:2015-07-06 21:12:33

标签: jsf jsf-2.2

这是我第一个使用JSF的应用程序,所以我有点困惑。我需要读取托管bean之间的值,但无论我尝试多少解决方案,它总是为null。最近我注意到我的@PostConstruct方法被多次调用,导致值丢失。我已经查看过这个问题的其他帖子,但一直无法解决。

我正在使用JSF 2.2

感谢任何帮助,谢谢!

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;

import org.primefaces.context.RequestContext;

import com.tiendavirtual.model.Cliente;
import com.tiendavirtual.model.Compra;
import com.tiendavirtual.model.Item;
import com.tiendavirtual.model.Producto;
import com.tiendavirtual.service.ICompraServiceLocal;
import com.tiendavirtual.service.IProductoServiceLocal;

@ViewScoped
@ManagedBean
public class CompraBean {

@EJB
private ICompraServiceLocal compraService;

@EJB
private IProductoServiceLocal productoService;

private Cliente clienteCarrito;


@PostConstruct
public void init() {
    productoActual = new Producto();
    itemActual = new Item();
    carritoCompra = new ArrayList<Item>();
    precioTotal = 0;
    cantidadProductosCarrito = 0;
    getClienteActual();
}

 ... setters and getters

0 个答案:

没有答案