List of usage examples for org.hibernate PropertyValueException getMessage
@Override
public String getMessage()
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); }