@SuppressWarnings("unchecked")
 @Test
 public void testIteratorRemove() throws Exception {
   Iterator iter = set.iterator();
   try {
     iter.remove();
     fail("Expected IllegalStateException");
   } catch (IllegalStateException e) {
   }
   set.add(one);
   set.add(new Int(2));
   set.add(new Int(3));
   try {
     iter.remove();
     fail("Expected IllegalStateException");
   } catch (IllegalStateException e) {
   }
   dataService.setBinding("iter", new ManagedSerializable(iter));
   newTransaction();
   iter = (Iterator) dataService.getBinding("iter", ManagedSerializable.class).get();
   while (iter.hasNext()) {
     Object next = iter.next();
     if (one.equals(next)) {
       iter.remove();
       try {
         iter.remove();
         fail("Expected IllegalStateException");
       } catch (IllegalStateException e) {
       }
     }
   }
   newTransaction();
   iter = set.iterator();
   int count = 0;
   while (iter.hasNext()) {
     assertFalse(one.equals(iter.next()));
     count++;
   }
   assertEquals(2, count);
 }