List of usage examples for org.hibernate WrongClassException WrongClassException
public WrongClassException(String message, Serializable identifier, String entityName)
From source file:org.springframework.orm.hibernate3.HibernateTemplateTests.java
License:Apache License
@Test public void testExceptions() throws HibernateException { SQLException sqlEx = new SQLException("argh", "27"); final JDBCConnectionException jcex = new JDBCConnectionException("mymsg", sqlEx); try {/*from ww w . j a v a2 s . c om*/ hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw jcex; } }); fail("Should have thrown DataAccessResourceFailureException"); } catch (DataAccessResourceFailureException ex) { // expected assertEquals(jcex, ex.getCause()); assertTrue(ex.getMessage().indexOf("mymsg") != -1); } final SQLGrammarException sgex = new SQLGrammarException("mymsg", sqlEx); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw sgex; } }); fail("Should have thrown InvalidDataAccessResourceUsageException"); } catch (InvalidDataAccessResourceUsageException ex) { // expected assertEquals(sgex, ex.getCause()); assertTrue(ex.getMessage().indexOf("mymsg") != -1); } final LockAcquisitionException laex = new LockAcquisitionException("mymsg", sqlEx); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw laex; } }); fail("Should have thrown CannotAcquireLockException"); } catch (CannotAcquireLockException ex) { // expected assertEquals(laex, ex.getCause()); assertTrue(ex.getMessage().indexOf("mymsg") != -1); } final ConstraintViolationException cvex = new ConstraintViolationException("mymsg", sqlEx, "myconstraint"); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw cvex; } }); fail("Should have thrown DataIntegrityViolationException"); } catch (DataIntegrityViolationException ex) { // expected assertEquals(cvex, ex.getCause()); assertTrue(ex.getMessage().indexOf("mymsg") != -1); } final DataException dex = new DataException("mymsg", sqlEx); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw dex; } }); fail("Should have thrown DataIntegrityViolationException"); } catch (DataIntegrityViolationException ex) { // expected assertEquals(dex, ex.getCause()); assertTrue(ex.getMessage().indexOf("mymsg") != -1); } final JDBCException jdex = new JDBCException("mymsg", sqlEx); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw jdex; } }); fail("Should have thrown HibernateJdbcException"); } catch (HibernateJdbcException ex) { // expected assertEquals(jdex, ex.getCause()); assertTrue(ex.getMessage().indexOf("mymsg") != -1); } final PropertyValueException pvex = new PropertyValueException("mymsg", "myentity", "myproperty"); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw pvex; } }); fail("Should have thrown DataIntegrityViolationException"); } catch (DataIntegrityViolationException ex) { // expected assertEquals(pvex, ex.getCause()); assertTrue(ex.getMessage().indexOf("mymsg") != -1); } try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw new PersistentObjectException(""); } }); fail("Should have thrown InvalidDataAccessApiUsageException"); } catch (InvalidDataAccessApiUsageException ex) { // expected } try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw new TransientObjectException(""); } }); fail("Should have thrown InvalidDataAccessApiUsageException"); } catch (InvalidDataAccessApiUsageException ex) { // expected } final ObjectDeletedException odex = new ObjectDeletedException("msg", "id", TestBean.class.getName()); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw odex; } }); fail("Should have thrown InvalidDataAccessApiUsageException"); } catch (InvalidDataAccessApiUsageException ex) { // expected assertEquals(odex, ex.getCause()); } final QueryException qex = new QueryException("msg"); qex.setQueryString("query"); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw qex; } }); fail("Should have thrown InvalidDataAccessResourceUsageException"); } catch (HibernateQueryException ex) { // expected assertEquals(qex, ex.getCause()); assertEquals("query", ex.getQueryString()); } final UnresolvableObjectException uoex = new UnresolvableObjectException("id", TestBean.class.getName()); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw uoex; } }); fail("Should have thrown HibernateObjectRetrievalFailureException"); } catch (HibernateObjectRetrievalFailureException ex) { // expected assertEquals(TestBean.class.getName(), ex.getPersistentClassName()); assertEquals("id", ex.getIdentifier()); assertEquals(uoex, ex.getCause()); } final ObjectNotFoundException onfe = new ObjectNotFoundException("id", TestBean.class.getName()); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw onfe; } }); fail("Should have thrown HibernateObjectRetrievalFailureException"); } catch (HibernateObjectRetrievalFailureException ex) { // expected assertEquals(TestBean.class.getName(), ex.getPersistentClassName()); assertEquals("id", ex.getIdentifier()); assertEquals(onfe, ex.getCause()); } final WrongClassException wcex = new WrongClassException("msg", "id", TestBean.class.getName()); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw wcex; } }); fail("Should have thrown HibernateObjectRetrievalFailureException"); } catch (HibernateObjectRetrievalFailureException ex) { // expected assertEquals(TestBean.class.getName(), ex.getPersistentClassName()); assertEquals("id", ex.getIdentifier()); assertEquals(wcex, ex.getCause()); } final NonUniqueResultException nuex = new NonUniqueResultException(2); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw nuex; } }); fail("Should have thrown IncorrectResultSizeDataAccessException"); } catch (IncorrectResultSizeDataAccessException ex) { // expected assertEquals(1, ex.getExpectedSize()); assertEquals(-1, ex.getActualSize()); } final StaleObjectStateException sosex = new StaleObjectStateException(TestBean.class.getName(), "id"); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw sosex; } }); fail("Should have thrown HibernateOptimisticLockingFailureException"); } catch (HibernateOptimisticLockingFailureException ex) { // expected assertEquals(TestBean.class.getName(), ex.getPersistentClassName()); assertEquals("id", ex.getIdentifier()); assertEquals(sosex, ex.getCause()); } final StaleStateException ssex = new StaleStateException("msg"); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw ssex; } }); fail("Should have thrown HibernateOptimisticLockingFailureException"); } catch (HibernateOptimisticLockingFailureException ex) { // expected assertNull(ex.getPersistentClassName()); assertNull(ex.getIdentifier()); assertEquals(ssex, ex.getCause()); } final HibernateException hex = new HibernateException("msg"); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(org.hibernate.Session session) throws HibernateException { throw hex; } }); fail("Should have thrown HibernateSystemException"); } catch (HibernateSystemException ex) { // expected assertEquals(hex, ex.getCause()); } }
From source file:org.springframework.orm.hibernate4.HibernateTemplateTests.java
License:Apache License
@Test public void testExceptions() { SQLException sqlEx = new SQLException("argh", "27"); final JDBCConnectionException jcex = new JDBCConnectionException("mymsg", sqlEx); try {/*w ww .ja v a 2 s . co m*/ hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw jcex; } }); fail("Should have thrown DataAccessResourceFailureException"); } catch (DataAccessResourceFailureException ex) { // expected assertEquals(jcex, ex.getCause()); assertTrue(ex.getMessage().contains("mymsg")); } final SQLGrammarException sgex = new SQLGrammarException("mymsg", sqlEx); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw sgex; } }); fail("Should have thrown InvalidDataAccessResourceUsageException"); } catch (InvalidDataAccessResourceUsageException ex) { // expected assertEquals(sgex, ex.getCause()); assertTrue(ex.getMessage().contains("mymsg")); } final LockAcquisitionException laex = new LockAcquisitionException("mymsg", sqlEx); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw laex; } }); fail("Should have thrown CannotAcquireLockException"); } catch (CannotAcquireLockException ex) { // expected assertEquals(laex, ex.getCause()); assertTrue(ex.getMessage().contains("mymsg")); } final ConstraintViolationException cvex = new ConstraintViolationException("mymsg", sqlEx, "myconstraint"); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw cvex; } }); fail("Should have thrown DataIntegrityViolationException"); } catch (DataIntegrityViolationException ex) { // expected assertEquals(cvex, ex.getCause()); assertTrue(ex.getMessage().contains("mymsg")); } final DataException dex = new DataException("mymsg", sqlEx); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw dex; } }); fail("Should have thrown DataIntegrityViolationException"); } catch (DataIntegrityViolationException ex) { // expected assertEquals(dex, ex.getCause()); assertTrue(ex.getMessage().contains("mymsg")); } final JDBCException jdex = new JDBCException("mymsg", sqlEx); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw jdex; } }); fail("Should have thrown HibernateJdbcException"); } catch (HibernateJdbcException ex) { // expected assertEquals(jdex, ex.getCause()); assertTrue(ex.getMessage().contains("mymsg")); } final PropertyValueException pvex = new PropertyValueException("mymsg", "myentity", "myproperty"); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw pvex; } }); fail("Should have thrown DataIntegrityViolationException"); } catch (DataIntegrityViolationException ex) { // expected assertEquals(pvex, ex.getCause()); assertTrue(ex.getMessage().contains("mymsg")); } try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw new PersistentObjectException(""); } }); fail("Should have thrown InvalidDataAccessApiUsageException"); } catch (InvalidDataAccessApiUsageException ex) { // expected } try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw new TransientObjectException(""); } }); fail("Should have thrown InvalidDataAccessApiUsageException"); } catch (InvalidDataAccessApiUsageException ex) { // expected } final ObjectDeletedException odex = new ObjectDeletedException("msg", "id", TestBean.class.getName()); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw odex; } }); fail("Should have thrown InvalidDataAccessApiUsageException"); } catch (InvalidDataAccessApiUsageException ex) { // expected assertEquals(odex, ex.getCause()); } final QueryException qex = new QueryException("msg", "query"); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw qex; } }); fail("Should have thrown InvalidDataAccessResourceUsageException"); } catch (HibernateQueryException ex) { // expected assertEquals(qex, ex.getCause()); assertEquals("query", ex.getQueryString()); } final UnresolvableObjectException uoex = new UnresolvableObjectException("id", TestBean.class.getName()); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw uoex; } }); fail("Should have thrown HibernateObjectRetrievalFailureException"); } catch (HibernateObjectRetrievalFailureException ex) { // expected assertEquals(TestBean.class.getName(), ex.getPersistentClassName()); assertEquals("id", ex.getIdentifier()); assertEquals(uoex, ex.getCause()); } final ObjectNotFoundException onfe = new ObjectNotFoundException("id", TestBean.class.getName()); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw onfe; } }); fail("Should have thrown HibernateObjectRetrievalFailureException"); } catch (HibernateObjectRetrievalFailureException ex) { // expected assertEquals(TestBean.class.getName(), ex.getPersistentClassName()); assertEquals("id", ex.getIdentifier()); assertEquals(onfe, ex.getCause()); } final WrongClassException wcex = new WrongClassException("msg", "id", TestBean.class.getName()); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw wcex; } }); fail("Should have thrown HibernateObjectRetrievalFailureException"); } catch (HibernateObjectRetrievalFailureException ex) { // expected assertEquals(TestBean.class.getName(), ex.getPersistentClassName()); assertEquals("id", ex.getIdentifier()); assertEquals(wcex, ex.getCause()); } final NonUniqueResultException nuex = new NonUniqueResultException(2); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw nuex; } }); fail("Should have thrown IncorrectResultSizeDataAccessException"); } catch (IncorrectResultSizeDataAccessException ex) { // expected assertEquals(1, ex.getExpectedSize()); assertEquals(-1, ex.getActualSize()); } final StaleObjectStateException sosex = new StaleObjectStateException(TestBean.class.getName(), "id"); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw sosex; } }); fail("Should have thrown HibernateOptimisticLockingFailureException"); } catch (HibernateOptimisticLockingFailureException ex) { // expected assertEquals(TestBean.class.getName(), ex.getPersistentClassName()); assertEquals("id", ex.getIdentifier()); assertEquals(sosex, ex.getCause()); } final StaleStateException ssex = new StaleStateException("msg"); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw ssex; } }); fail("Should have thrown HibernateOptimisticLockingFailureException"); } catch (HibernateOptimisticLockingFailureException ex) { // expected assertNull(ex.getPersistentClassName()); assertNull(ex.getIdentifier()); assertEquals(ssex, ex.getCause()); } final HibernateException hex = new HibernateException("msg"); try { hibernateTemplate.execute(new HibernateCallback<Object>() { @Override public Object doInHibernate(Session session) { throw hex; } }); fail("Should have thrown HibernateSystemException"); } catch (HibernateSystemException ex) { // expected assertEquals(hex, ex.getCause()); } }