Если вы используете Openlayers, вы можете попробовать использовать слой Openlayers GeoRSS вместо векторного слоя. Есть много вещей, которые могут понадобиться настроить внутри openlayers при использовании векторных слоев для получения данных.
Попробуйте что-то вроде:
new OpenLayers.Layer.GeoRSS('GeoRSS Layer', 'http://ginyu.at:8080/geoserver/wienbike/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=wienbike%3Ainput2&maxfeatures=50&outputformat=json');
Если ехать по ссылке показывает код GeooRSS то очень ubnlikely, что проблема с GeoServer и вместо того, чтобы с тем, как OpenLayers пытается справиться с данными.
Если вы действительно хотите использовать вектор, попробуйте использовать эти параметры, чтобы позволить Openlayers знать, как обрабатывать данные. Что особенно важно, это стратегия, так как это позволяет OpenLayers знать, когда идти и получить данные ЭСТА и формат, как это позволяет ему знать, какой формат данные в.
new OpenLayers.Layer.Vector("GeoRSS Layer", {
strategies: [new OpenLayers.Strategy.Fixed()],
protocol: new OpenLayers.Protocol.HTTP({
url: "http://ginyu.at:8080/geoserver/wienbike/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=wienbike%3Ainput2&maxfeatures=50&outputformat=jsonl",
format: new OpenLayers.Format.GeoRSS()
})
});
Последнее, что нужно проверить, что ваш карта и ваши данные используют одну и ту же проекцию. Линия:
ol.proj.transform([16.37, 48.21], 'EPSG:4326', 'EPSG:3857'),
Предлагает, чтобы вы ожидали, что ваша карта будет в EPSG: 3857. Я не вижу, что вы указали карту на эту проекцию в любом месте. Поскольку вы используете слой MapQuestOpenAriel I, это верно, что это правильная проекция. Это не может быть проблемой, если все ваши данные находятся в одном проекте. Однако вы захотите убедиться, что ваши данные о георах находятся в этой проекции. Глядя на данные, поступающие через ваш канал GeoRSS, он находится в EPSG: 4326. Это означает, что он не будет правильно проецироваться над вашей картой. Это означает, что вам нужно будет перепрограммировать координаты данных GeoRSS. Мы можем сделать это, указав проекцию в слое OpenLayers GeoRSS:.
new OpenLayers.Layer.GeoRSS('GeoRSS Layer',
'http://ginyu.at:8080/geoserver/wienbike/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=wienbike%3Ainput2&maxfeatures=50&outputformat=json',
{projection: new OpenLayers.Projection("EPSG:4326")}
);
Я не смог найти какую-либо документацию на «парсер» переменный для OpenLayers Это может означать, что вы используете другую библиотеку или Если это так, то, что я сказал выше, может не помочь.
thx. Это не должно быть проблемой. Я просто удалил записи из базы данных. Я думаю, что это что-то с геосервером .. – user2975100