Tìm kiếm đối tượng trong Geoserver

Thảo luận trong 'Lập trình cho mã nguồn mở' bắt đầu bởi htv, 24/5/12.

  1. htv

    htv New Member

    Tham gia ngày:
    10/1/12
    Bài viết:
    6
    Đã được thích:
    0
    Điểm thành tích:
    0
    Xin chào các bạn!
    Mình đang tìm hiểu về Webgis Geoserver, Openlayers, mình có hàm tìm kiếm đối tượng và di chuyển đến đối tượng chọn như sau:
    Mã:
    function Search() {
                    var url = "http://localhost:8080/geoserver/wfs?request=GetFeature&version=1.1.0&TypeName=kh:khanhhoa&PropertyName=shbando,geom&OutputFormat=GML2&FILTER=<Filter xmlns="http://www.opengis.net/ogc"><PropertyIsEqualTo><PropertyName>kh:shbando</PropertyName><Literal>"
                url = url + encodeURI(document.getElementById('txtSearch').value);
                url = url + "</Literal></PropertyIsEqualTo></Filter>";
                //alert(url);
                OpenLayers.loadURL(url, '', map, function (Response) {
                    var res_str = Response.ResponseText;
                   getAttibteByName(res_str,"shbando");
               }, alert("Không tìm thấy"));
                
            }
    
     function getAttibteByName(GMLStr, att) {
                    if (GMLStr.indexOf(att) == -1) {
    
    
                        } else {
                        strlen = att.length;
                        pos1 = GMLStr.indexOf(att);
                        str2 = GMLStr.substr(pos1 + strlen + 1);
                        pos2 = str2.indexOf('<');
                        attval = str2.substr(0, pos2);
                        alert(attval);
                        }
    
    
                }
    
     function ZoomToBox(GMLStr) {
                str = "<gml:coordinate";
                if(GMLStr.indexOf(str)==-1){
                } else {
                strlen=str.length;
                pos1=GMLStr.indexOf(str);
                str2 = GMLStr.substr(pos1 + strlen + 1);
                pos2 = str2.indexOf('>');
                str3 = str2.substr(pos2 + 1);
                pos3 = str3.indexOf("<gml:coordiantes>");
                strcor = str3.substr(0, pos3);
                var xmi, xmax, ymin, ymax;
                var arr = strcor.split(" ");
                var arrx = new Array();
                var arry = new Array();
                for (i = 0; i < arr.length; i++) {
                    var tmpx = arr.split(",");
                    arrx = tmpx[1];
                }
                xmin = arrx[0];
                xmax = arrx[0];
                for (i = 1; i < arr.length; i++) {
                    if (arrx < xmax)
                        xmin = arrx;
                    if (arrx > xmax)
                        xmax = arrx;
                 }
                for (i = 0; i < arr.length; i++) {
                    var tmpy = arr.split(",");
                    arry = tmpy[0];
                }
                ymin = arry[0];
                ymax = arry[0];
                for (i = 1; i < arr.length; i++) {
                    if (arry < ymin)
                        ymin = arry;
                    if (ary > ymax)
                        ymax = arry;
                }
                var bounds = new OpenLayers.Bounds(xmin, ymin, xmax, ymax);
                map.zoomToExtent(bounds);
                }
            }

    Nhưng khi chạy thì hàm Search() nó báo lỗi là: unhandleRequest. Mình dò code đến đoạn :
    var url = "http://localhost:8080/geoserver/wfs?request=GetFeature&version=1.1.0&TypeName=kh:khanhhoa&PropertyName=shbando,geom&OutputFormat=GML2
    thì nó vẫn chạy dc.
    Bạn nào biết sửa lỗi dùm mình với.
    Xin cảm ơn.
     
    Last edited by a moderator: 24/5/12
    Tags:
  2. boytimviet

    boytimviet Member

    Tham gia ngày:
    9/12/12
    Bài viết:
    240
    Đã được thích:
    2
    Điểm thành tích:
    18
    bạn lấy mấy hàm này ở đâu vậy bạn.... bạn muốn tìm kiếm thông tin đối tượng ak
     
  3. bep345

    bep345 New Member

    Tham gia ngày:
    21/5/16
    Bài viết:
    2
    Đã được thích:
    0
    Điểm thành tích:
    0
    Web:
    đặt gạch hóng...............................................................................................................................................................
     

Chia sẻ trang này

Share
Đang tải...