[Gfoss] openlayers + postgis
beppe
beppenapo a gmail.com
Mer 25 Nov 2009 18:20:57 CET
Provo e riprovo...inutilmente!
Ho letto millemila post/thread/pdf/blog e altre diavolerie; Sulla
mailing list di openlayers c'è chi dice addirittura che la gestione
dell'epsg 3003 non è supportata dal nostro OL!!!
Ho provato ad aggirare l'ostacolo passando da geoserver, ma anche lì è
stato un fallimento!
Una considerazione: ma se openlayer è il futuro del webmapping (lo penso
davvero) e postgis è "leader nel settore", perché è così difficile
pubblicare anche solo un livello?
Ricapitolo per chi si fosse messo in ascolto solo ora e abbia a cuore la
mia salute mentale:
ho una tabella postgis MULTIPOINT, 2d, srid 3003. Mi piacerebbe
pubblicarla con openlayer...dove potrebbe essere l'inghippo? Io non sono
in grado, evidentemente, di vederlo...ogni consiglio è ben accetto,
anche di smettere con l'informatica ;)
Grazie mille
-beppe-
Il giorno ven, 20/11/2009 alle 20.04 +0100, beppe ha scritto:
> 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