使用GeoWebCache时的“粉红色瓷砖”

时间:2010-12-07 21:28:23

标签: javascript openlayers geoserver

我正在尝试在Windows Server 2008上测试基于PostGIS / Geoserver / OpenLayers堆栈的简单Web地图。我一直在使用此tutorial和geoserver docs

当我尝试使用GeoWebCache将WMS图层添加到我的地图时:

    var index1d = new OpenLayers.Layer.WMS(
        "Index1",
        "http://localhost:1979/geoserver/gwc/service/wms",
        {'layers': "Index2000:index1d",
         'format': "image/png",
         'transparent': true
        },
        {'opacity': 1.0, 'isBaseLayer': true}

    );
    map.addLayer(index1d);

我得到臭名昭着的'粉红色瓷砖'。 Geoserver中的错误说:

ERROR [geowebcache.GeoWebCacheDispatcher] - Requested horizontal resolution:
750.0000000000005 , best match: 632.4668417968734 exceeds 10% threshold. 
Perhaps the client is configured  with an incorrect set of scales (resolutions),  
or the DPI setting is off compared to the one in GWC ? http://localhost:
1979/geoserver/gwc/service/wms

我的图层似乎配置正确,当我在没有GeoWebCache的情况下提供它时,只需:

"http://localhost:1979/geoserver/wms"

一切正常。

有人能指出我犯错的地方吗?

1 个答案:

答案 0 :(得分:2)

我没有使用过GWC,但我猜你自己设置了缓存?如果是这样,我想你必须设置GWC创建它的平铺的比例。基于这些假设,我会说你在访问瓷砖时必须使用相同的比例级别。查看您的GWC设置,然后重新创建缓存。

(使用WMS会起作用,因为默认情况下地图数据会动态渲染,采用您提供的任何参数并从中进行渲染。)