if ( ! ( Environment.getBytecodeProvider() instanceof org.hibernate.bytecode.cglib.BytecodeProviderImpl ) ) {
// because of the scoping :(
reportSkip( "env not configured for cglib provider", "bytecode-provider InvocationTargetException handling" );
return;
}
Session s = openSession();
s.beginTransaction();
Bean bean = new Bean();
bean.setSomeString( "my-bean" );
s.save( bean );
s.getTransaction().commit();
s.close();
s = openSession();
s.beginTransaction();
bean = ( Bean ) s.load( Bean.class, bean.getSomeString() );
assertFalse( Hibernate.isInitialized( bean ) );
try {
bean.throwException();
fail( "exception not thrown" );
}
catch ( ParseException e ) {
// expected behavior
}
catch( Throwable t ) {
fail( "unexpected exception type : " + t );
}
s.delete( bean );
s.getTransaction().commit();
s.close();