code: public void rollbackBreakIteration(List objectsToStore)
      {
          // now we mix up different api's and use PB-api too
          log.info("rollbackBreakIteration");
          /*
          store list of objects, then get these objects with Iterator, start
          iteration, then break
          */
          storeObjects(objectsToStore);
          Class searchClass = objectsToStore.get(0).getClass();
          PersistenceBroker broker = getBroker();
          try
          {
              Query q = new QueryByCriteria(searchClass);
              // we get the iterator and step into the first found object
              Iterator it = broker.getIteratorByQuery(q);
              it.next();
          }
          /*
          Now we want to break iteration or something wrong. In this case we have to
          cleanup the used PB instance by a close call
          */
          finally
          {
              if(broker != null) broker.close();
          }
  
          // to notify the client about the failure we throw an exception
          // if we don't throw such an exception the client don't get notified
          // about the failure
          throw new EJBException("## Testing of rollback behaviour - rollbackBreakIteration ##");
      }
docs: We use several OJB services, start to iterate a query result and do
  an odmg-tx.abort call.
  
  @ejb:interface-method