Ho un problema molto complicato: ho un database Postgis 2.0, usato come archivio dati per Geoserver 2.1.3
Ho una tabella con una colonna geometrica (denominata forma), con SRID 4326
Ho creato una vista come questa:
CREATE VIEW pippo AS SELECT st_geometryn(shape,1) as geom FROM events
E poi ho pubblicato la vista utilizzando geoserver. Tutto funziona, ad eccezione delle richieste GetFeatureInfo, che non riesce con l'errore "Operazione su geometrie SRID miste A semplice
select * from geometry_columns
restituisce che lo SRID di pippo.geom è 0 (ma dovrebbe essere 4326)
Ho provato anche con questa definizione per la vista
CREATE VIEW pippo AS SELECT st_setsrid(st_geometryn(shape,1), 4326) as geom FROM events
ma ho ancora SRID = 0 in geometry_columns .... qualche aiuto?
Ecco come viene definito il layer in Geoserver:
Soluzione
Ho trovato una soluzione alternativa per risolvere non il problema stesso, ma per consentire a Geoserver di eseguire la ricerca spaziale sulle richieste GetFeatureInfo:
invece di creare una vista e pubblicarla, ho pubblicato un livello SQL definito direttamente in geoserver. Nel modulo di definizione del livello mi ha permesso di selezionare il giusto tipo di gemoetry e SRID e tutto ora funziona!