virtual jlong nextElement(jlong iteratorData) {
virtual jobject nextElement(jobject iteratorData) {
   virtual jlong nextElement(jlong iteratorData) {      if (req && hasMoreElements(iteratorData)) {         ((STLIteratorData*)iteratorData)->remainingObjects--;         //we can't create a copy of the descriptor, subclass is unknown,         //and doing "new SI::Descriptor *()" - creating a pointer! - is pretty useless.         //So the java code will have to keep a reference to the RequestWrapper,         //which it does anyway.         return (jlong )( *( ((STLIteratorData*)iteratorData)->it )++ );      } else         return (jlong )0;   }