rodriguesabner
String cannot be cast to com.jdenner.model.bean.Produto
String não pode ser convertido em ....bean.Produto.
Basicamente você está fazendo assim:
String produto = "Camiseta";
list.add(produto);
Ao invés de fazer:
Produto produto = new Produto();
produto.setCategoria("Camiseta");
list.add(produto);
Não sei se aplica ao seu caso. Manda o que tem na linha 337!
Edit>
ACho que é essa linha aqui:
item.setProduto((Produto) comboProduto.getSelectionModel().getSelectedItem());
setProduto é do tipo String? ou do tipo bean.Produto?
Maks_Silva
olha o código completo melhor
rodriguesabner
Manda aqui mesmo, só falar onde tá dando erro e qual a linha. É melhor e mais fácil
Maks_Silva
Mano o erro é oq vc falou é o cast
item.setProduto((Produto) comboProduto.getSelectionModel().getSelectedItem());
o setProduto é o produto da classe ItemVenda
e o Produto é outra classe
public class ItemVenda {
private int codigo;
private Produto produto;
private int quantidade;
private double valorUnitario;
public ItemVenda() {
this.codigo = 0;
}
public void setProduto(Produto produto) {
this.produto = produto;
}
rodriguesabner
Troca a variavel produto pra String. Não tem necessidade ela ser do tipo Produto
Maks_Silva
fiz como vc disse
item.setProduto((String) comboProduto.getSelectionModel().getSelectedItem());
error: incompatible types: String cannot be converted to Produto
item.setProduto((String) comboProduto.getSelectionModel().getSelectedItem());
rodriguesabner
Como ta o ItemVenda agora?
Tem que ficar assim:
public String getProduto(String produto) {
return produto;
}
public void setProduto(String produto) {
this.produto = produto;
}
Maks_Silva
estranho mesmo assim não deu certo.
Acho que uma boa prática seria um Generics
rodriguesabner
Como não deu certo? Que erro deu? Se estiver dando o mesmo erro, vc não alterou.
rodriguesabner
Do jeito q vc está fazendo, teria q passar assim
Produto produto = new Produto();
produto.setA();
produto.setB();
item.setProduto(produto);
Mas vc só quer passar o nome do produto, então não tem problemas trocar pra String!!!
Maks_Silva
Ele da erro ao adicionar o produto, estranho
rodriguesabner
Maks_Silva
Caused by: java.lang.ClassCastException: java.base/java.lang.String cannot be cast to com.jdenner.model.bean.Produto
at com.jdenner.control.VendaController.adicionarItem(VendaController.java:337)