Я использовал стратегию openlayers clustter для кластеризации набора данных из геосервера.
Я использовал следующий код для моделирования кластеров.
var myStyle = new OpenLayers.Style( {
pointRadius :20,
fillColor :'#FFFF00',
fillOpacity :0.5,
strokeColor :'#FFFFFF',
strokeWidth :2,
strokeOpacity :0.5
});
var myStyleMap = new OpenLayers.StyleMap( {
"default" :myStyle
});
Это хорошо работает, если я напишу код вhtml-страницы, а также в jsp-страницах.
когда я хочу динамически изменять радиус кластера в соответствии с количеством точек данных в каждом кластере, мне просто нужно было внести следующие изменения в приведенный выше код.
var myStyle = new OpenLayers.Style( {
pointRadius :"${radius}",
fillColor :'#FFFF00',
fillOpacity :0.5,
strokeColor :'#FFFFFF',
strokeWidth :2,
strokeOpacity :0.5
}, {
context : {
radius: function(feature) {
return Math.min(feature.attributes.count, 7) +3;;
}
}
});
var myStyleMap = new OpenLayers.StyleMap( {
"default" :myStyle
});
Это также прекрасно работает, если я пишу код на html-странице.
Но, когда я хочу использовать второй код на страницах jsp, приведенных выше, это дает мне ошибку Mozilla Firebug => Неожиданное значениепарсинг атрибутов r.
кто-нибудь может мне помочь?
заранее спасибо!