Ola bom dia a tds,meu problema é o seguinte:
O metodo abaixo funciona e roda tranquilo qdo um pedido so tem um item no banco, mais qdo tem mais de um item nao funciona alguem poderia me dizer o que esta faltando aqui?
public Boolean extornoPedido(Integer id) {
session = HibernateUtil.getInstance();
Transaction tx = null;
try {
tx = session.beginTransaction();
Query dados = session.createQuery(" from Itensvenda where pedidoid= :id");
dados.setInteger("id",id);
Iterator pairs = dados.list().iterator();
while ( pairs.hasNext() ){
Object[] pair = (Object[]) pairs.next();
Integer Item =(Integer) pair[0];
Itensvenda loadprod=findItensvenda(Item);
Integer QTD = loadprod.getQuantidade();
Integer Idprod = loadprod.getProduto().getProdutoid();
Query extorno = session.createQuery("update Produto set qtdatual=(qtdatual + :qtd) where produtoid= :ID ");
extorno.setInteger("ID", Idprod).setInteger("qtd",QTD).executeUpdate();
tx.commit();
System.out.println("commit efetuado!");
}//FIM WHILE
return true;
} catch (HibernateException e) {
tx.rollback();
} finally {
session.close();
}
return false;
}
Obrigado flws t+.