Ajuda com codigo

ola pessoas boa tarde, estou tentando fazer um metodo que baixe uma qtd de um determinado produto em estoque.o codigo é o seguinte:

public void baixaEstoque(){
		IDaoPedido idao = new DaoPedido();
		if(idao.baixaEstoque(itensvenda.getQuantidade(), itensvenda.getProduto().getProdutoid())){
			mensagem("sucessoBaixa");
		}
		else{
			mensagem("falhaBaixa");			
			
		}			
	}

//------------------------------------------------------------------------------------------


	public Boolean baixaEstoque(Integer qtd,Integer id) {
		session = HibernateUtil.getInstance();
		Transaction tx = null;
		try {
			tx = session.beginTransaction();			
			Query baixa = session.createQuery("update Produto set qtdatual=(qtdatual - :qtd) where produtoid= :id  ");
			Boolean resultado = (Boolean) baixa.setInteger("id", id).setInteger("qtd", qtd).uniqueResult();
			
			return true;
		} catch (HibernateException e) {
			tx.rollback();
			
		} finally {
			session.close();
		}
		return false;

	}

eu executo ele sempre que inclui um produto em um item,mas ele nao atualiza , o que eu fiz de errado aqui estou meio confuso,Aguem pode dar umas dicas?
vlw obrigado t+

já tentou dar commit na transação??

tx.commit??

opa tinha esquecido msm,mas nao funcionou nao ele sempre retrna false!

Opa resolvi assim:


public Boolean baixaEstoque(Integer qtd,Integer id) {
		session = HibernateUtil.getInstance();
		Transaction tx = null;
		try {
			tx = session.beginTransaction();			
			Query baixa = session.createQuery("update Produto set qtdatual=(qtdatual - :qtd) where produtoid= :id  ");
	         baixa.setInteger("id", id).setInteger("qtd", qtd).executeUpdate();
			 tx.commit();
			return true;
		} catch (HibernateException e) {
			tx.rollback();
			
		} finally {
			session.close();
		}
		return false;

	}

tava faltando o .executeUpdate();
to apanhando + to aprendendo,flw obrigado pela ajuda mgarcia