assertTrue( original.getClass().equals( annotation.getClass() ));
assertTrue( String.format("Class %s should equal class %s", object.getClass(), annotation.getClass()), object.getClass().equals( annotation.getClass() ));
    public void test_annotating_a_dataset_cglib_issue() throws Exception    {        // Setup: original is our in-memory, used every where object.        Dataset original = new Dataset();        original.setName( " two rows " );        original = (Dataset) iPojos.createDataObject( original, null );        DatasetData annotatedObject = new DatasetData( original );        Dataset annotated = (Dataset) iPojos.updateDataObject(                 annotatedObject.asIObject(), null);        // Dataset m = new Dataset( original.getId(), false);        DatasetAnnotation annotation = new DatasetAnnotation();        annotation.setContent( " two rows content " );        annotation.setDataset( annotated );                // CGLIB        DatasetAnnotation object             = (DatasetAnnotation) iPojos.createDataObject( annotation , null );        DataObject returnedToUser = new AnnotationData( object );                // Now working but iPojos is still returning a CGLIB class.        assertTrue( original.getClass().equals( annotation.getClass() ));    }