ArcGIS Java ServiceFeatureTable 查询总是 returns 只有 1 个特征

ArcGIS Java ServiceFeatureTable query always returns only 1 feature

我正在尝试使用 arcgis-java (ArcGIS Runtime) 查询 ArcGIS Online 要素图层,如下所示:

ServiceFeatureTable featureTable = new ServiceFeatureTable(this.SERVICE_FEATURE_URL);
QueryParameters query = new QueryParameters();
query.setWhereClause("1=1");
query.setReturnGeometry(true);
ListenableFuture<FeatureQueryResult> queryFeaturesAsync = featureTable.queryFeaturesAsync(query);
try {
    FeatureQueryResult result = queryFeaturesAsync.get();
    Iterator<Feature> iterator = result.iterator();
    if (iterator.hasNext()) {
        Feature feature = iterator.next();
        System.out.println(feature.getAttributes());
        System.out.println(feature.getGeometry());
    }
} catch (Exception e) {
    e.printStackTrace();
}

但它总是 returns 只有一个特征,即使该层具有不止 1 个特征。我怎样才能获得不止一项功能?

我也试过设置setMaxFeatures但是没有效果。

主要是我没有创建 FeatureLayerMapView 对象,也没有在 MapView 上添加 FeatureLayer。我只想查询ServiceFeatureTable.

我认为它返回了所有功能,但您只看到了第一个。尝试更改 if:

if (iterator.hasNext()) {

while:

while (iterator.hasNext()) {