Pessoal, ta dando esse erro qnd tento inserir um objeto no array ! To usando um converter, mas acho q tem algo errado nele…
O erro eh esse: Erro de conversão ao definir o valor ‘’ para ‘null Converter’.
public class Produto implements Serializable{
private static final long serialVersionUID = -2477528265610024554L;
public Item nomeItem;
public int quantidadeItem;
//gets e setd
// HashCode e equals
@ManagedBean(name="carrinhoBean")
@SessionScoped
public class CarrinhoBean {
private Produto produto = new Produto();
ItemBean itemBean = new ItemBean();
public String car;
public List<Produto> lista = new ArrayList<Produto>();
public ArrayList<String> carrinhoSessao = new ArrayList<String>();
public List<Produto> listar() {
return this.lista;
}
public String insere() {
Produto produto = new Produto();
produto.setNomeItem(produto.nomeItem);
produto.setQuantidadeItem(produto.quantidadeItem);
lista.add(produto);
return null;
}
public String remove(Produto produto) {
lista.remove(produto);
return null;
}
public List<Produto> getLista() {
return this.lista;
}
public Produto buscarPorNome(String n){
Produto c = null;
int pos = 0;
n= itemBean.getItemm();
while(pos< lista.size()){
c = lista.get(pos);
if(c.getNomeItem().equals(n)){
System.out.println(c);
return c;
}
pos++;
}
return null;
}
public Produto getProduto() {
return produto;
}
public void setProduto(Produto produto) {
this.produto = produto;
}
}
@FacesConverter(value = "itemConverter", forClass=CarrinhoBean.class)
public class ItemConverter implements Converter {
CarrinhoBean carrinhoBean = new CarrinhoBean();
@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) {
return carrinhoBean.buscarPorNome(value);
}
@Override
public String getAsString(FacesContext context, UIComponent component, Object object) {
if(object != null && object instanceof CarrinhoBean) {
return ((Produto)object).getNomeItem().toString();
}
return null;
}
}
