[Gfoss] openlayers + postgis

beppe beppenapo a gmail.com
Ven 20 Nov 2009 20:04:19 CET


Faccio un passo indietro:
> Se il tuo layer non si vede potrebbero esserci dei problemi non 
> di proiezione, ma proprio di layer. Prova a caricare il WFS in 
> Qgis, oppure con il brower fai delle richieste GetCapabilities e 
> GetFeature (vedi sempre gli esempi su 
> http://www.rigacci.org/openlayers/).
> 
Credo proprio che il problema sia "a monte".
Ho seguito le tue indicazioni ed effettivamente mi sono reso conto che,
forse, il problema non è di open layers.

1. Qgis carica tranquillamente la tabella postgis

2. Facendo la seguente richiesta al browser, l'immagine viene stampata
correttamente:
http://localhost/cgi-bin/mapserv?map=/var/www/mtsc-2.1/config/default/map.map&layer=confini_com&mode=map

3. GetCapabilities mi da un file xml "vuoto" ovvero senza nessun dato su
bbox, latlon o srs ecc.

4. GetFeature mi da il seguente errore: "msWFSGetFeature(): WFS server
error. TYPENAME 'confini_com' doesn't exist in this server.  Please
check the capabilities and reformulate your request."

5. Ho guardato il tuo mapfile, ho notato che come proiezione generale
hai usato l'epsg 900913. Ho provato a cambiare il mio mapfile sulla
falsariga del tuo mettendo come proiezione generale epsg:900913, come
proiezione del layer (originariamente in epsg:3003) la 4326, ma ho un
errore: "msProcessProjection(): Projection library error. no options
found in 'init' file". In calce vi posto il mapfile.

6. Giustamente mi fai notare che se la proiezione nativa di OL e la
900913, l'extent deve essere nelle coordinate giuste...domanda stupida:
come recupero l'extent in epsg:900913? Da OpenStreetMap recupero
longitudine e latitudine e qgis (uso la versione 1.3) non supporta la
900913 (ho provato a vedere sul sito di spatial reference, dove danno
"gli estremi" della proiezione[1]...ammetto di non aver controllato se
la proiezione è supportata da postgis, eventualmente devo inserirla?).

7. Devo agire in qualche modo sulla tabella di Postgis?

Grazie mille per l'aiuto, è abbastanza importante per me riuscire
risolvere questo problema!

-beppe-

[1] http://spatialreference.org/ref/sr-org/6627/

------------mapfile-------------------
MAP
NAME "Vervò"
EXTENT  653890.824038 5121367.412500 673982.300962 5139410.087500 
UNITS meters
SIZE 600 500
SHAPEPATH "../../../mtsc_data"
SYMBOLSET "../common/symbols/symbols-pmapper.sym"   
FONTSET "../common/fonts/msfontset.txt" 
RESOLUTION 96
IMAGETYPE png
INTERLACE OFF
"init=epsg:900913"
END  

WEB
  TEMPLATE "map.html"
  IMAGEPATH "/var/www/tmp/"
  IMAGEURL "/tmp/"
  METADATA
    wfs_title          "Confini comunali"
    wfs_onlineresource
"http://localhost/cgi-bin/mapserv?map=/home/www/mtsc-2.1/config/default/map.map&"
    wfs_srs            "EPSG:900913"

  END  # Metadata
END  # Web 

  LAYER
    NAME 'confini_com'
    TYPE POLYGON
    CONNECTIONTYPE postgis
    CONNECTION "dbname='vervo' host=localhost port=5432 user='xxxxx'
password='xxxxxx'"
    DATA 'confini_com FROM public.dati_amm_terr using unique
"id_dati_amm" using SRID=3003'
    METADATA
      'wms_title' 'dati_amm_terr'
    END
    STATUS DEFAULT
    TRANSPARENCY 100
    PROJECTION
      "init=epsg:4326"
    END
    CLASS
       NAME 'confini_com' 
       STYLE
         SYMBOL 0 
         SIZE 2 
         OUTLINECOLOR 0 0 0
         COLOR 11 54 104
       END
    END
  END #layer
END #map



Maggiori informazioni sulla lista Gfoss