La tua chiamata e' buona per visualizzare mappe su un browser, ma non e' una chiamata valida per un server wms.
Il fatto che il browser ti visualizza una mappa, fa' penare che il server che stai chimanado non sia impostato per funzionare come un server wms, ma come un server di altro tipo. Tanto per chiarirci subito, non basta che un server rimandi mappe geografiche per dire che e' un server wms. Per essere un server wms deve rispondere a una chiamata che abbia dei dei parametri ben precisi. E non sono quelli che metti te. >http://localhost/cgi-bin/mapserv.exe?map=/ms4w/apps/esercitazioni/mapfiles/Esempio_WMS.map&layer=wms_aanp_f33&mode=map > ><http://localhost/cgi-bin/mapserv.exe?map=/ms4w/apps/esercitazioni/mapfiles/Esempio_WMS.map&layer=wms_aanp_f33&mode=map> Questa non e' una chiamata WMS , il fatto che in certi strumenti essa funziona, come nel browser, e' solo perche' essa comunque e' una chiamata che ritorna una mappa, che poi in effetti e' solo una immagine prodotta al volo. Ma la similitudine finisce qui. Ammesso che quello che stai invocando (la url) sia effettivamente un server wms (questo lo sai te.) Il problema e' nei parametri, ovverosia tutto quello che vi e' dopo il carattere '?' dopo ci devono essere solo parametri, i parametri di una chiamata wms, e sottolineo : di una chiamata wms, sono svariati tra essi ci sono i seguenti: BBOX, esempio BBOX=1554750.736259,4678325.520000,1771722.760000,4924791.900000 indica l'estensione geografica da restituire WIDTH, esempio WIDTH=400 HEIGHT, esempio HEIGHT=300 indicano le dimensioni della mappa che si richiede al server wms. Ovviamente questo parametro lo immetti se lo chiami dal browser, se lo chiami tramite un client GIS, ci pensera' il software a metterci questi due parametri. SRS=EPSG:3003 indica il sistema di riferimento in cui deve essere prodotta la mappa. Layers, ad esempio: Layers=_idreg,idprov,idcomuni Questo lo usi anche te, ma ti prego di notare che nella tua chiamata manca la 's' finale e non e' una differenza da poco. Il server wms vuole sapere quali layers usare e se gli invii un parametro che si chiama "Layer" semplicemente per lui non vuol dire niente. Poi ci devi mettere un parametro che indica il tipo di chiamata che invii come versione version=1.1.0 anche questo in certi casi viene messo in automatico dal client GIS. Poi ci metti questo service=WMS obbligatorio per il server wms, tante' che molti clcient gis lo mettono in automatico. e quindi lo devi mettere quando chiami dal browser, perche' non e' un client GIS, mentre puoi ignorarlo nei client gis perche' lo metteranno loro in automatico (almeno nei client gis fatti bene) Poi altri parametri sono: FORMAT=JPEG che indica che vuoi una mappa in formato jpeg (potevi dargli anche PNG) e il parametro TRANSPARENT=TRUE E infine ci metti il fatidico request=getmap che dice al server wms che stai effettuando una richiesta di produzione di una mappa. (altro caso di parametro obbligario che il client gis mette automaticamente, mentre nel browser lo devi mettere te) venendo alla querystring che hai mandato te, Te ci metti il parametro seguente: map=/ms4w/apps/esercitazioni/mapfiles/Esempio_WMS.map Non ho mai visto prima questo parametro nelle chiamate wms e quindi per me non lo e'. Probabilmente si tratta di un parametro specifico di un certo tipo di server ma che probabilmente e' fuori standard. Non trattandosi di un parametro standard non verra' interpretato e forse provoca l'errore. Altro parametro "strano": mode=map anche questo per me non e' un parametro del WMS. Invece dovresti metterci request=getmap infine l'ultimo parametro che metti: layer=wms_aanp_f33 a parte l'essere sicuro che l'identificativo del layer sia effettivamente "wms_aanp_f33", questo devi esserlo te. Senz'altro non devi mettere "layer" ma bensi' "layers" Ciao, -- ----------------- Andrea Peri . . . . . . . . . qwerty àèìòù -----------------
_______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [email protected] http://lists.faunalia.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it.
