[Gfoss] R: problema proiezioni postgis+mapserver

Andrea Peri peri.rtoscana a gmail.com
Ven 12 Set 2008 20:59:03 CEST


>ho fatto dei test creando un servizio wms appoggiato a degli shp, e da qgis
>faccio la chiamata al wms in questo modo
>http://localhost:81/cgi-bin/mapserv.exe?map=/ms4w/Apache/htdocs/lombardia/moreLayers.map
>e in questo caso vedo i layer su qgis!
>quindi anche questa è sbagliata?

Il discorso non e' semplice, e va al di la' di quello che vorrei
discutere in questo thread,
ma poiche' non posso ne rispondere "si", ne "no", devo cercare di spiegarmi:

Quello che determina una chiamata wms corretta sono i parametri che si
impone nella chiamata.
Eventuali parametri che esulano da quelli previsti dallo standard sono
peculiarita' del server specifico,
ma che non determinano la correttezza della chiamata (dal punto di
vista delle specifiche wms).

in una chiamata wms ci devono essere dei parametri, in loro assenza il
server wms non deve rispondere.

alcuni dei parametri sono questi:

...?BBOX=1554750.736259,4678325.520000,1771722.760000,4924791.900000&
WIDTH=400&HEIGHT=300&SRS=EPSG:3003&Layers=_idreg,idprov,idcomuni&
version=1.1.0&service=WMS&FORMAT=JPEG&TRANSPARENT=TRUE& request=getmap

naturalmente non tutti sono obbligatori (o meglio se non li indichi
prende il default)

Ma alcuni sono obbligatori.
Gli obbligatori sono:

request=getmap
service=WMS

se questi mancano il server wms non deve rispondere una mappa ! Se in
questa situazione risponde con una mappa adotta un comportamento che
non e' standard.

Ora bisogna chiarirsi, perche' nella prima email avevi detto

>se
>richedo la mappa da browser con
>"http://localhost:81/cgi-bin/mapserv.exe?map=/ms4w/Apache/htdocs/lombardia/elettrodottiPostgis.map&layer=elettrodotti&mode=map"
>mi ritorna la mappa, se invece accedo al servizio wms da qgis, ottengo un
>layer ke "sembra vuoto".

E questo era strano perche' nella chiamata con il browser non avevi
messo i due parametri obbligatori, ma la mappa ti era arrivata.
Mentre su qgis non ti arrivava.
Questo appariva quasi come se la chiamata i questione rispondesse a
una specificita' di MapServer, ma che fosse fuori standard wms.

Nella tua seconda email invece spieghi che:

>ho fatto dei test creando un servizio wms appoggiato a degli shp, e da qgis
>faccio la chiamata al wms in questo modo
>http://localhost:81/cgi-bin/mapserv.exe?map=/ms4w/Apache/htdocs/lombardia/moreLayers.map
>e in questo caso vedo i layer su qgis!

se sia o no una chiamata corretta di un server wms non posso capirlo
da quello che mostri.

L'unico modo per saperlo e' provare a chiamarla da browser.
La chiami tale e quale e ti dve ritornare un messaggio di pagina vuota
o di errore.
poi ci metti i due parametri obbligatori e deve tornarti una mappa.

Infatti il browser non aggiunge automaticamente i parametri
obbligatori, cosa che invece fa' qgis.

Resta il mistero di come mai nel primo caso senza i parametri
obbligatori il browser ti visualizzava la mappa.
Puo' anche darsi che mapserver sia cosi' "smart" da non richiedere i
parametri obbligatori, ma sarebbe un comportamento non standard e
questo rischia di generare confusione su come deve essere fatta una
chiamata wms.

Scusa la complicatezza del discorso, ma una semplice risposta si/no
non avrebbe aiutato la discussione.

-- 
~~~~~~~~~~~~~~~~~
§ Andrea §
§ Peri §
~~~~~~~~~~~~~~~~~


Maggiori informazioni sulla lista Gfoss