0
getfeatureinfo를 사용하여 단일 값을 추출하려고합니다. GeoServer가 제공 한 정확한 코드를 사용했습니다.geoServer에서 단일 값 추출 getfeatureinfo
map.events.register('click', map, function (e) {
document.getElementById('nodelist').innerHTML = "Loading... please wait...";
var params = {
REQUEST: "GetFeatureInfo",
EXCEPTIONS: "application/vnd.ogc.se_xml",
BBOX: map.getExtent().toBBOX(),
SERVICE: "WMS",
INFO_FORMAT: 'text/html',
QUERY_LAYERS: map.layers[0].params.LAYERS,
FEATURE_COUNT: 50,
Layers: 'Wind Speed',
WIDTH: map.size.w,
HEIGHT: map.size.h,
format: format,
s tyles: map.layers[0].params.STYLES,
srs: map.layers[0].params.SRS};
// handle the wms 1.3 vs wms 1.1 madness
if(map.layers[0].params.VERSION == "1.3.0") {
params.version = "1.3.0";
params.j = parseInt(e.xy.x);
params.i = parseInt(e.xy.y);
} else {
params.version = "1.1.1";
params.x = parseInt(e.xy.x);
params.y = parseInt(e.xy.y);
}
// merge filters
if(map.layers[0].params.CQL_FILTER != null) {
params.cql_filter = map.layers[0].params.CQL_FILTER;
}
if(map.layers[0].params.FILTER != null) {
params.filter = map.layers[0].params.FILTER;
}
if(map.layers[0].params.FEATUREID) {
params.featureid = map.layers[0].params.FEATUREID;
}
OpenLayers.loadURL("http://localhost:8080/geoserver/GIS/wms", params, this, setHTML, setHTML);
OpenLayers.Event.stop(e);
});
}
// sets the HTML provided into the nodelist element
function setHTML(response){
document.getElementById('nodelist').innerHTML = response.responseText;
};
이제 응답에서 단일 값을 가져 오려고합니다. 나는 파싱을 시도했다. COntent.ftl 변경 중. 그러나 반환 된 코드는 HTML 형식입니다. response.responseXML을 사용하려고하면 Null을 반환합니다. 누군가 입력을 제공 할 수 있다면 도움이 될 것입니다. 그것은 그것이 직설적 인 느낌을주는 것에 따라 그 frustating 그러나 조용한 지난 3 일 이후 그것 위에있다.
감사합니다, Astha