Ola Pessoal
Estou com problemas para retornar um List de objetos que vem de com query para um laço de repetição FOR.
Criei um método para pegar a consulta e estou usando este metodo na minha calsse, porem apresenta o erro “e cannot be resolved to a variable”
segue abaixo meu método e a classe principal que utiliza o método.
Se alguem puder me ajudar agradeço. Abraços a todos
identar texto pré-formatado por 4 espaços
import entidades.Clientes;
public class ClienteServico {
private EntityManagerFactory emf = Persistence.createEntityManagerFactory("ERSCheff");
private EntityManager em;
public void createEntityManager() {
em = emf.createEntityManager();
}
public void salvar(Clientes cliente) {
em.getTransaction().begin();
em.persist(cliente);
em.getTransaction().commit();
}
public Clientes atualizar(Clientes cliente) {
em.getTransaction().begin();
cliente = em.merge(cliente);
em.getTransaction().commit();
return cliente;
}
public List<Clientes> getAllClientes() {
List<Clientes> listaCli;
listaCli = em.createNativeQuery("Select e.A1_COD, e.A1_NOME From SA1 e").getResultList();
return (listaCli);
}
public Clientes getClienteById(int id) {
return em.find(Clientes.class, id);
}
public void remover(Clientes cliente) {
em.getTransaction().begin();
cliente = em.merge(cliente);
em.remove(cliente);
em.getTransaction().commit();
}
public void closeEntityManager() {
em.close();
}
}
O erro é apresentado quando eu executo o trecho abaixo no momento de fazer o FOR
ClienteServico servico = new ClienteServico();
servico.createEntityManager();
servico.getAllClientes();
List<Clientes> customer = servico.getAllClientes();
for (Clientes c : customer) { //O ERRO É APRESENTADO AQUI !!!
JOptionPane.showMessageDialog(null, "Teste "+c.getA1_COD(), "Mensagem",
JOptionPane.INFORMATION_MESSAGE);
}