[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