the reason you are confused is that you generally do not use the RemoteIteratorServer class directly. if, for instance, you had serializable objects, you would use the SerialRemoteIteratorServer with an iterator which returns some serializable objects. see the example
iterator TestClient (possibly somewhat confusingly named).