我正在尝试将其中一个包含geoserver的数据集添加到openlayers地图中。我已经按照opengeo教程,在这里看到了类似的线程,但我似乎无法破解它。有人可以看一眼我的代码和地理服务器设置并告诉我哪里出错了吗?
这是我的代码:
//WMS map
world = new OpenLayers.Layer.WMS("Global Imagery", "http://maps.opengeo.org/geowebcache/service/wms", {
layers : "openstreetmap",
format : "image/png"
});
map.addLayer(world);
//WFS
parks = new OpenLayers.Layer.Vector("WFS", {
strategies : [new OpenLayers.Strategy.BBOX()],
protocol : new OpenLayers.Protocol.WFS({
url : "http://localhost:8081/geoserver/wfs",
featureType : "medford:parks",
featureNS : "http://medford.opengeo.org/medford"
})
});
map.addLayer(parks);
map.zoomToMaxExtent();
GeoServer详情: workspace name = medford,命名空间URI = http://medford.opengeo.org 对于功能类型,我尝试过“公园”和“medford:公园”
图层已启用,公布并具有30个功能返回限制。
我很难将简单的地图放在一起
谢谢, 詹姆斯
答案 0 :(得分:3)
首先,您可以通过使用像firebug这样的调试工具提供有关任何错误的更多信息。我的第一个猜测是geoserver实例没有在同一个域上运行(这包括同一域上的不同端口),并且跨服务器脚本限制阻止了对服务器的请求。
如果是这种情况,OpenLayers会附带一些示例CGI代理脚本,以允许您代理对geoserver的调用。看看here了解更多信息。
希望有帮助,如果没有,可能会发布一些与您看到的任何错误相关的更多信息。