@Override
  public Response updateRecord(ValueObject oldPersistentObject, ValueObject persistentObject)
      throws Exception {
    Session session = null;
    try {
      session = HibernateUtil.getSessionFactory().openSession();
      session.beginTransaction();
      ProdutoVO produto = (ProdutoVO) persistentObject;

      String sql =
          "select PRODUTO from br.com.alberteije.vo.ProdutoVO as PRODUTO where PRODUTO.gtin = "
              + produto.getGtin()
              + " and PRODUTO.id <> "
              + produto.getId();

      produto = (ProdutoVO) session.createQuery(sql).uniqueResult();
      if (produto != null) {
        return new ErrorResponse("Código de produto já cadastrado!");
      }

      produto = (ProdutoVO) persistentObject;
      produto.setHashIncremento(-1);
      session.update(produto);
      session.getTransaction().commit();
      return new VOResponse(produto);
    } catch (Exception e) {
      e.printStackTrace();
      session.getTransaction().rollback();
      return new ErrorResponse("Erro ao cadastrar o produto!");
    } finally {
      session.close();
    }
  }