Example usage for org.hibernate PropertyValueException getMessage

List of usage examples for org.hibernate PropertyValueException getMessage

Introduction

In this page you can find the example usage for org.hibernate PropertyValueException getMessage.

Prototype

@Override
    public String getMessage() 

Source Link

Usage

From source file:gov.nih.nci.security.dao.AuthorizationDAOImpl.java

License:Open Source License

public void modifyObject(Object obj) throws CSTransactionException {
    Session s = null;/*from  w w w  .j a v a 2 s .c o  m*/
    Transaction t = null;
    try {
        s = HibernateSessionFactoryHelper.getAuditSession(sf);
        t = s.beginTransaction();

        try {
            obj = performEncrytionDecryption(obj, true);
        } catch (EncryptionException e) {
            throw new CSObjectNotFoundException(e);
        }
        try {
            obj = ObjectUpdater.trimObjectsStringFieldValues(obj);
        } catch (Exception e) {
            throw new CSObjectNotFoundException(e);
        }

        s.update(obj);
        t.commit();
        s.flush();
        auditLog.info("Updating the "
                + obj.getClass().getName().substring(obj.getClass().getName().lastIndexOf(".") + 1)
                + " Object ");
    } catch (PropertyValueException pve) {
        try {
            t.rollback();
        } catch (Exception ex3) {
            if (log.isDebugEnabled())
                log.debug("Authorization|||createObject|Failure|Error in Rolling Back Transaction|"
                        + ex3.getMessage());
        }
        if (log.isDebugEnabled())
            log.debug("Authorization|||createObject|Failure|Error in Rolling Back Transaction|"
                    + pve.getMessage());
        throw new CSTransactionException(
                "An error occured in updating the " + StringUtilities.getClassName(obj.getClass().getName())
                        + ".\n" + " A null value was passed for a required attribute "
                        + pve.getMessage().substring(pve.getMessage().indexOf(":")),
                pve);
    } catch (ConstraintViolationException cve) {
        try {
            t.rollback();
        } catch (Exception ex3) {
            if (log.isDebugEnabled())
                log.debug("Authorization|||createObject|Failure|Error in Rolling Back Transaction|"
                        + ex3.getMessage());
        }
        if (log.isDebugEnabled())
            log.debug("Authorization|||createObject|Failure|Error in Rolling Back Transaction|"
                    + cve.getMessage());
        throw new CSTransactionException(
                "An error occured in updating the " + StringUtilities.getClassName(obj.getClass().getName())
                        + ".\n" + " Duplicate entry was found in the database for the entered data",
                cve);
    } catch (Exception ex) {
        log.error(ex);
        try {
            t.rollback();
        } catch (Exception ex3) {
            if (log.isDebugEnabled())
                log.debug("Authorization|||modifyObject|Failure|Error in Rolling Back Transaction|"
                        + ex3.getMessage());
        }
        if (log.isDebugEnabled())
            log.debug("Authorization|||modifyObject|Failure|Error in modifying the " + obj.getClass().getName()
                    + "|" + ex.getMessage());
        throw new CSTransactionException("An error occured in modifying the "
                + StringUtilities.getClassName(obj.getClass().getName()) + "\n" + ex.getMessage(), ex);
    } finally {
        try {

            s.close();
        } catch (Exception ex2) {
            if (log.isDebugEnabled())
                log.debug("Authorization|||modifyObject|Failure|Error in Closing Session |" + ex2.getMessage());
        }
    }
    if (log.isDebugEnabled())
        log.debug("Authorization|||modifyObject|Success|Successful in modifying the " + obj.getClass().getName()
                + "|");

}

From source file:gov.nih.nci.security.dao.AuthorizationDAOImpl.java

License:Open Source License

public void createObject(Object obj) throws CSTransactionException {
    Session s = null;//ww w .  j a  va2  s . c  o m
    Transaction t = null;
    try {

        try {
            obj = performEncrytionDecryption(obj, true);
        } catch (EncryptionException e) {
            throw new CSObjectNotFoundException(e);
        }

        try {
            obj = ObjectUpdater.trimObjectsStringFieldValues(obj);
        } catch (Exception e) {
            throw new CSObjectNotFoundException(e);
        }

        s = HibernateSessionFactoryHelper.getAuditSession(sf);
        t = s.beginTransaction();
        s.save(obj);
        t.commit();
        s.flush();
        auditLog.info("Creating the "
                + obj.getClass().getName().substring(obj.getClass().getName().lastIndexOf(".") + 1)
                + " Object ");
    } catch (PropertyValueException pve) {
        try {
            t.rollback();
        } catch (Exception ex3) {
            if (log.isDebugEnabled())
                log.debug("Authorization|||createObject|Failure|Error in Rolling Back Transaction|"
                        + ex3.getMessage());
        }
        if (log.isDebugEnabled())
            log.debug("Authorization|||createObject|Failure|Error in Rolling Back Transaction|"
                    + pve.getMessage());
        throw new CSTransactionException(
                "An error occured in creating the " + StringUtilities.getClassName(obj.getClass().getName())
                        + ".\n" + " A null value was passed for a required attribute "
                        + pve.getMessage().substring(pve.getMessage().indexOf(":")),
                pve);
    } catch (ConstraintViolationException cve) {
        try {
            t.rollback();
        } catch (Exception ex3) {
            if (log.isDebugEnabled())
                log.debug("Authorization|||createObject|Failure|Error in Rolling Back Transaction|"
                        + ex3.getMessage());
        }
        if (log.isDebugEnabled())
            log.debug("Authorization|||createObject|Failure|Error in Rolling Back Transaction|"
                    + cve.getMessage());
        throw new CSTransactionException(
                "An error occured in creating the " + StringUtilities.getClassName(obj.getClass().getName())
                        + ".\n" + " Duplicate entry was found in the database for the entered data",
                cve);
    } catch (Exception ex) {
        log.error(ex);
        try {
            t.rollback();
        } catch (Exception ex3) {
            if (log.isDebugEnabled())
                log.debug("Authorization|||createObject|Failure|Error in Rolling Back Transaction|"
                        + ex3.getMessage());
        }
        if (log.isDebugEnabled())
            log.debug("Authorization|||createObject|Failure|Error in creating the " + obj.getClass().getName()
                    + "|" + ex.getMessage());
        throw new CSTransactionException("An error occured in creating the "
                + StringUtilities.getClassName(obj.getClass().getName()) + "\n" + ex.getMessage(), ex);
    } finally {
        try {

            s.close();
        } catch (Exception ex2) {
            if (log.isDebugEnabled())
                log.debug("Authorization|||createObject|Failure|Error in Closing Session |" + ex2.getMessage());
        }
    }
    if (log.isDebugEnabled())
        log.debug("Authorization|||createObject|Success|Successful in creating the " + obj.getClass().getName()
                + "|");
}

From source file:javaapplication5.main.java

private static void modificarEmpleado() {
    try {/*from w w  w.  j  a v a  2 s .  c om*/
        SessionFactory sesion = NewHibernateUtil.getSessionFactory();
        Session sesionCreada = sesion.openSession();
        System.out.println("Introduzca el numero de empleado a modificar");
        Empleados emple = (Empleados) sesionCreada.get(Empleados.class, Short.parseShort(sc.nextLine()));
        Transaction tx = sesionCreada.beginTransaction();

        //emple.toString();

        System.out.print("Introduce el nuevo apellido del empleado: ");
        emple.setApellido(sc.nextLine());
        System.out.print("Introduce el nuevo oficio del empleado: ");
        emple.setOficio(sc.nextLine());
        System.out.print("Introduce el nuevo director del empleado: ");
        emple.setDir(Short.parseShort(sc.nextLine()));
        System.out.print("Introduce la nueva fecha de alta del empleado: ");
        emple.setFechaAlt(Date.valueOf(sc.nextLine()));
        System.out.print("Introduce el nuevo salario del empleado: ");
        emple.setSalario(Float.parseFloat(sc.nextLine()));
        System.out.print("Introduce la nueva comision del empleado: ");
        emple.setComision(Float.parseFloat(sc.nextLine()));
        System.out.print("Introduce el nuevo departamento del empleado: ");
        emple.setDepartamentos(
                (Departamentos) sesionCreada.get(Departamentos.class, Byte.parseByte(sc.nextLine())));
        sesionCreada.update(emple);

        try {
            tx.commit();
        } catch (ConstraintViolationException cve) {
            System.out.println("El empleado ya existe");
        }
        sesionCreada.close();

    } catch (ObjectNotFoundException onfe) {
        System.out.println("El empleado no existe solicitado no existe");
    } catch (PropertyValueException pve) {
        System.out.println(pve.getMessage());
    }

}

From source file:motor.MOTOR.java

/**
 * Mtodo que inserta una registro en la tabla cliente. Utiliza operaciones
 * elementales//ww  w  .j  a  v a 2  s.  co  m
 *
 * @param cliente el coche a insertar
 * @throws ExceptionMotor excepcion que integra el mensaje de error al
 * usuario, el codigo de error y el mensaje de error que nos ha devuelto la
 * base de datos.
 */
public void insertarCliente(Cliente cliente) throws ExceptionMotor {
    // Se inicia una transaccin en la sesin creada
    Transaction t = sesion.beginTransaction();

    try {

        sesion.save(cliente);
        // Se confirma la transaccin
        t.commit();
    } catch (IdentifierGenerationException igEx) {
        ExceptionMotor ex = new ExceptionMotor();
        throw ex;
    } catch (ConstraintViolationException igEx) {
        ExceptionMotor ex = new ExceptionMotor();
        if (igEx.getErrorCode() == 2290) {
            ex.setCodigoErrorAdministrador(igEx.getErrorCode());
            ex.setSentenciaSQL(igEx.getSQL());
            ex.setMensajeErrorUsuario(
                    "Error. El campo telefono debe empezar por 6 o 9 y contener 9 caracteres numricos y el email debe acabar en .com o .es");
            ex.setMensajeErrorAdministrador(igEx.getMessage());
        } else {
            ex.setCodigoErrorAdministrador(igEx.getErrorCode());
            ex.setSentenciaSQL(igEx.getSQL());
            ex.setMensajeErrorUsuario("Error. Los siguientes campos son nicos: dni, email y telefono");
            ex.setMensajeErrorAdministrador(igEx.getMessage());
        }
        throw ex;
    } catch (PropertyValueException pvEx) {
        ExceptionMotor ex = new ExceptionMotor();

        ex.setMensajeErrorUsuario(
                "Error. Los siguientes campos son obligatorios: nombre, apellido1, email, telefono, dni");
        ex.setMensajeErrorAdministrador(pvEx.getMessage());
        throw ex;
    } catch (SQLGrammarException sqlEx) {
        ExceptionMotor ex = new ExceptionMotor();

        ex.setCodigoErrorAdministrador(sqlEx.getErrorCode());
        ex.setSentenciaSQL(sqlEx.getSQL());
        ex.setMensajeErrorUsuario("Error. El campo telefono es un campo numerico");
        ex.setMensajeErrorAdministrador(sqlEx.getMessage());

        throw ex;
    } catch (GenericJDBCException jdbcEx) {
        ExceptionMotor ex = new ExceptionMotor();
        if (jdbcEx.getErrorCode() == 20004) {
            ex.setCodigoErrorAdministrador(jdbcEx.getErrorCode());
            ex.setSentenciaSQL(jdbcEx.getSQL());
            ex.setMensajeErrorUsuario("Error. El taller esta cerrado");
            ex.setMensajeErrorAdministrador(jdbcEx.getMessage());
        }
        if (jdbcEx.getErrorCode() == 20005) {
            ex.setCodigoErrorAdministrador(jdbcEx.getErrorCode());
            ex.setSentenciaSQL(jdbcEx.getSQL());
            ex.setMensajeErrorUsuario("Error. El email debe acabar por .com o .es");
            ex.setMensajeErrorAdministrador(jdbcEx.getMessage());
        }
        if (jdbcEx.getErrorCode() == 20006) {
            ex.setCodigoErrorAdministrador(jdbcEx.getErrorCode());
            ex.setSentenciaSQL(jdbcEx.getSQL());
            ex.setMensajeErrorUsuario("Error. El campo telefono es un campo numerico de 9 caracteres");
            ex.setMensajeErrorAdministrador(jdbcEx.getMessage());
        }

        throw ex;
    } catch (Exception e) {
        ExceptionMotor ex = new ExceptionMotor();

        ex.setCodigoErrorAdministrador(0);
        ex.setMensajeErrorUsuario("Error general en el sistema, Consulte con el administrador");
        ex.setMensajeErrorAdministrador(e.getMessage());

        throw ex;
    }

}

From source file:motor.MOTOR.java

/**
 * Mtodo que modifica los registros de un cliente ya existente. Utiliza
 * operaciones elementales//  w  w w.j ava2  s.  c o  m
 *
 * @param cliente los datos del coche a modificar
 * @throws ExceptionMotor excepcion que integra el mensaje de error al
 * usuario, el codigo de error y el mensaje de error que nos ha devuelto la
 * base de datos
 */
public void modificarCliente(Cliente cliente) throws ExceptionMotor {
    Transaction t = sesion.beginTransaction();

    try {

        sesion.update(cliente);
        // Se confirma la transaccin
        t.commit();

    } catch (ConstraintViolationException cvEx) {
        ExceptionMotor ex = new ExceptionMotor();

        if (cvEx.getErrorCode() == 2290) {
            ex.setCodigoErrorAdministrador(cvEx.getErrorCode());
            ex.setSentenciaSQL(cvEx.getSQL());
            ex.setMensajeErrorUsuario(
                    "Error. El campo telefono debe empezar por 6 o 9 y contener 9 caracteres numricos y el email debe acabar en .com o .es");
            ex.setMensajeErrorAdministrador(cvEx.getMessage());

        } else {
            ex.setCodigoErrorAdministrador(cvEx.getErrorCode());
            ex.setSentenciaSQL(cvEx.getSQL());
            ex.setMensajeErrorUsuario("Error. Los siguientes campos son unicos: dni, email y telefono");
            ex.setMensajeErrorAdministrador(cvEx.getMessage());
        }
        throw ex;
    } catch (PropertyValueException pvEx) {
        ExceptionMotor ex = new ExceptionMotor();

        ex.setMensajeErrorUsuario(
                "Error. Los siguientes campos son obligatorios: nombre, apellido1, email, telefono, dni");
        ex.setMensajeErrorAdministrador(pvEx.getMessage());

        throw ex;
    } catch (SQLGrammarException sqlEx) {
        ExceptionMotor ex = new ExceptionMotor();

        ex.setCodigoErrorAdministrador(sqlEx.getErrorCode());
        ex.setSentenciaSQL(sqlEx.getSQL());
        ex.setMensajeErrorUsuario("Error. El telefono es un campo numerico");
        ex.setMensajeErrorAdministrador(sqlEx.getMessage());

        throw ex;
    } catch (GenericJDBCException jdbcEx) {
        ExceptionMotor ex = new ExceptionMotor();

        if (jdbcEx.getErrorCode() == 20004) {
            ex.setCodigoErrorAdministrador(jdbcEx.getErrorCode());
            ex.setSentenciaSQL(jdbcEx.getSQL());
            ex.setMensajeErrorUsuario("Error. El taller esta cerrado");
            ex.setMensajeErrorAdministrador(jdbcEx.getMessage());
        }
        if (jdbcEx.getErrorCode() == 20005) {
            ex.setCodigoErrorAdministrador(jdbcEx.getErrorCode());
            ex.setSentenciaSQL(jdbcEx.getSQL());
            ex.setMensajeErrorUsuario("Error. El email debe acabar por .com o .es");
            ex.setMensajeErrorAdministrador(jdbcEx.getMessage());
        }
        if (jdbcEx.getErrorCode() == 20006) {
            ex.setCodigoErrorAdministrador(jdbcEx.getErrorCode());
            ex.setSentenciaSQL(jdbcEx.getSQL());
            ex.setMensajeErrorUsuario("Error. El campo telefono es un campo numerico de 9 caracteres");
            ex.setMensajeErrorAdministrador(jdbcEx.getMessage());
        }
        throw ex;
    } catch (StaleStateException ssEx) {
        ExceptionMotor ex = new ExceptionMotor();

        ex.setMensajeErrorUsuario("Error. No existe ese cliente");

        throw ex;
    } catch (Exception e) {
        ExceptionMotor ex = new ExceptionMotor();

        ex.setCodigoErrorAdministrador(0);
        ex.setMensajeErrorUsuario("Error general en el sistema, Consulte con el administrador");
        ex.setMensajeErrorAdministrador(e.getMessage());

        throw ex;
    }

}

From source file:motor.MOTOR.java

/**
 * Mtodo que inserta un registro en la tabla coche. Utiliza operaciones
 * elementales// w w w  . j ava 2  s.c  o  m
 *
 * @param coche El objeto coche
 * @throws ExceptionMotor excepcion que integra el mensaje de error al
 * usuario, el codigo de error y el mensaje de error que nos ha devuelto la
 * base de datos
 */
public void insertarCoche(Coche coche) throws ExceptionMotor {
    // Se inicia una transaccin en la sesin creada
    Transaction t = sesion.beginTransaction();

    try {

        sesion.save(coche);
        // Se confirma la transaccin
        t.commit();
    } catch (PropertyValueException pvEx) {
        ExceptionMotor ex = new ExceptionMotor();

        ex.setMensajeErrorUsuario("Error. Todos los campos son obligatorios");
        ex.setMensajeErrorAdministrador(pvEx.getMessage());

        throw ex;

    } catch (ConstraintViolationException igEx) {
        ExceptionMotor ex = new ExceptionMotor();

        if (igEx.getErrorCode() == 2291) {
            ex.setCodigoErrorAdministrador(igEx.getErrorCode());
            ex.setSentenciaSQL(igEx.getSQL());
            ex.setMensajeErrorUsuario("Error. No existe ese cliente");
            ex.setMensajeErrorAdministrador("VIOLACION DE CHECK CONSTRAINT");
        } else if (igEx.getErrorCode() == 1) {
            ex.setCodigoErrorAdministrador(igEx.getErrorCode());
            ex.setSentenciaSQL(igEx.getSQL());
            ex.setMensajeErrorUsuario("Error. Los siguientes campos son unicos: matricula");
            ex.setMensajeErrorAdministrador("VIOLACION DE UNIQUE KEY");
        }
        throw ex;

    } catch (GenericJDBCException gjdbcEx) {
        ExceptionMotor ex = new ExceptionMotor();

        if (gjdbcEx.getErrorCode() == 20002) {
            ex.setCodigoErrorAdministrador(gjdbcEx.getErrorCode());
            ex.setSentenciaSQL(gjdbcEx.getSQL());
            ex.setMensajeErrorUsuario("Error. La ITV debe estar pasada");
            ex.setMensajeErrorAdministrador("VIOLACION DE TRIGGER ITV_PASADA");
        }
        if (gjdbcEx.getErrorCode() == 20004) {
            ex.setCodigoErrorAdministrador(gjdbcEx.getErrorCode());
            ex.setSentenciaSQL(gjdbcEx.getSQL());
            ex.setMensajeErrorUsuario("Error. El taller esta cerrado");
            ex.setMensajeErrorAdministrador("VIOLACION DE TRIGGER TALLER_ABIERTO");
        }
        throw ex;

    } catch (Exception e) {
        ExceptionMotor ex = new ExceptionMotor();

        ex.setCodigoErrorAdministrador(0);
        ex.setMensajeErrorUsuario("Error general en el sistema, Consulte con el administrador");
        ex.setMensajeErrorAdministrador(e.getMessage());

        throw ex;
    }

}

From source file:rest.resteasy.crud.ExceptionHandler.java

License:Open Source License

private InvalidValue[] findInvalidValues(Throwable t) {
    if (t instanceof InvalidStateException)
        return ((InvalidStateException) t).getInvalidValues();
    if (t instanceof PropertyValueException) {
        PropertyValueException x = (PropertyValueException) t;
        // watch it, keep this in sync with exception handling
        InvalidValue invalidValue = new InvalidValue(x.getMessage(), null, x.getPropertyName(), null, null);
        InvalidValue[] invalidValues = new InvalidValue[1];
        invalidValues[0] = invalidValue;
        return invalidValues;
    }/*ww  w. ja  v a2  s  .  c o  m*/
    if (t.getCause() != null)
        return findInvalidValues(t.getCause());
    return null;
}

From source file:stroom.entity.server.util.EntityServiceExceptionUtil.java

License:Apache License

/**
 * Unwrap an exception and log it if required.
 *//*www . j a va 2s  .  c  o m*/
public static String unwrapMessage(final Throwable rootEx, final Throwable e) {
    if (e instanceof EntityExistsException) {
        return "Unable to create record as it matches an existing record";
    }
    if (e instanceof OptimisticLockException) {
        final StringBuilder msg = new StringBuilder();
        msg.append("Unable to save record state as it has been updated by another transaction.");
        return msg.toString();
    }
    if (e instanceof PersistenceException) {
        final PersistenceException psEx = (PersistenceException) e;

        if (psEx.getCause() != null) {
            return unwrapMessage(rootEx, psEx.getCause());
        }
        // Unknown type of error
        return getDefaultMessage(psEx, rootEx);
    }
    if (e instanceof PropertyValueException) {
        final PropertyValueException pEx = (PropertyValueException) e;
        final StringBuilder msg = new StringBuilder();
        msg.append("Unable to save record state.  ");
        msg.append(pEx.getPropertyName());
        msg.append(": ");
        if (pEx.getMessage().contains("not-null")) {
            msg.append("mandatory");
        } else {
            msg.append(pEx.getMessage());
        }
        return msg.toString();
    }
    if (e instanceof ConstraintViolationException) {
        final ConstraintViolationException constraintViolationException = (ConstraintViolationException) e;
        final StringBuilder msg = new StringBuilder();
        msg.append("Unable to save record state.  ");
        for (final ConstraintViolation<?> violation : constraintViolationException.getConstraintViolations()) {
            msg.append(violation.getPropertyPath().toString());
            msg.append(": ");
            msg.append(violation.getMessage());
            msg.append(". ");
        }
        return msg.toString();
    }
    if (e instanceof java.sql.SQLException) {
        final StringBuilder msg = new StringBuilder();
        msg.append("Unable to save record state.  ");
        msg.append(e.getMessage());
        return msg.toString();
    }
    if (e instanceof EntityServiceException) {
        return e.getMessage();
    }
    if (e.getCause() != null) {
        return unwrapMessage(rootEx, e.getCause());
    }
    return getDefaultMessage(e, rootEx);
}