[Mapserver-DE] getFeatureInfo - aber wie?

"Jörg Thomsen (MapMedia GmbH)" jt at mapmedia.de
Mit Apr 12 15:15:56 CEST 2006


Hallo Olaf,

Imkemeyer, Olaf (Innenministerium) schrieb:
> Hallo Arnulf, hallo Listenteilnehmer,
> 
> vielen Dank für die Antwort. Dass der getFeatureInfo-Request die Angabe eines QUERY_LAYERS erfordert ist mir schon klar. Deshalb steht diese Angabe in meinem URL auch mit drin (s.u.).
> 
> Zwei Fragen sind noch offen geblieben:
> 
> Wo/wie muss ich den URL im MapFile einbauen und wie kann ich für das Abfrageergebnis mein Template nutzen (s.u.)?

Ich hole mal etwas weiter aus: Die ganze Geschichte mit den 
HTML-Templates beim UMN MapServer ist alt, sehr alt. Als das eingeführt 
wurde hat noch niemand OGC-konforme WMS benutzt, d.h. praktisch gab es 
das nicht und so hat jeder seinen eigenen MapServer-Client mit den 
HTML-Clients gebastelt. Diese HTML-Template-Technologie hält sich sehr 
lange, wohl vor allem deshalb weil es alte Projekte gibt die damit 
laufen und keine Bedarf einer Änderung besteht (bzw. gesehen wird).

Inzwischen werden neue Projekte auf OGC-Konformität getrimmt, d.h. Du 
erstellst einen oder mehrer WMS, holst Dir weitere existierende WMS und 
setzt einen OGC-konformen Client ein. Für die HTML-Templates ist da kein 
Platz mehr, genaugenommen sind sie überflüssig.

(Jetzt kannst Du Dich bei mir persönlich beschweren, aber als Du zur 
Schulung hier warst, war das mit den Templates durchaus noch aktuell...)

O.K. die Templates funktionieren ja noch, kein Grund also 
wegzuschmeißen. Du hast jetzt aber das Problem, das GetFeatureInfo nicht 
kaskadiert werden kann, dass bedeutet Du musst den WMS des Landesamtes 
direkt anfragen. Das sollte doch in Deine Templates integrierbar sein?

Gruß, Jörg



> Wäre dankbar, wenn sich das noch beantworten ließe.
> 
> Beste Grüße,
> Olaf
> 
> 
> 
> -----Ursprüngliche Nachricht-----
> Von: Arnulf Christl [mailto:arnulf.christl at ccgis.de] 
> Gesendet: Dienstag, 11. April 2006 11:12
> An: mapserver-de at freegis.org
> Betreff: Re: [Mapserver-DE] getFeatureInfo - aber wie?
> 
> 
> Imkemeyer, Olaf (Innenministerium) wrote:
> 
>>Hallo Listenteilnehmer!
>>
>>Nach gaaanz laaangem Vorlauf haben wir nun auch eine
>>MapServer-Anwendung am Laufen. Funktioniert alles soweit ganz gut, 
>>seit kurzem greifen wir auch einen WMS bei einem Landesamt ab. Das 
>>sind mehrere Layer, von denen der Großteil 'queryable=1' ist.
>>
>>Die möchte ich jetzt natürlich auch abfragen können. 'Habe ältere
>>Listeneinträge, MapServer-Buch und -Homepage, etc. durchsucht, da ist 
>>auch allerhand nachzulesen, am Ziel bin ich aber noch nicht 
>>angekommen.
>>
>>Ich weiß, dass das Ganze über den getFeatureInfo-Request laufen wird,
>>mir ist aber nicht klar, wo der eigentlich hin muss:
>>
>>Mit in den URL, der den WMS abruft? In einen eigenen MapFile-Layer?
>>Wird er über ein Template aufgerufen?
>>
>>Andere Layer im MapFile frage ich über html-Templates ab, die
>>bestimmte Attributspalten der .DBF-Datei einlesen. 'Wäre nicht 
>>schlecht, wenn ich die Templates auch für die WMS-Layer-Abfrage nutzen 
>>könnte. Über ein Abfrageergebnis als 'text/plain' wäre ich allerdings 
>>auch schon glücklich.
>>
>>Was ist z.B. falsch an (habe ich analog einem älteren Listen-Eintrag
>>verwendet, dort funktioniert's auch):
>>
>>http://...php?VERSION=1.1.1&REQUEST=getFeatureInfo&SERVICE=wms&SRS=EPS
>>G:31467&BBOX=3443645.910,5905478.668,3660106.080,6114421.559&WIDTH=550
>>&HEIGHT=330&LAYERS=ffh&STYLES=&FORMAT=image/png&INFO_FORMAT=text/plain
>>&QUERY_LAYERS=ffh&X=70&Y=50 ?
>>
>>Selbst wenn ich einige Parameter weglasse, bekomme ich Fehlermeldungen
>>in der Art:
>>
>>
>><ServiceExceptionReport version="1.1.1">
>>-
>>	<ServiceException code="LayerNotDefined">
>>
>>msWMSFeatureInfo(): WMS server error. Required QUERY_LAYERS parameter
>>missing for getFeatureInfo. </ServiceException> 
>></ServiceExceptionReport>
> 
> 
> Hallo,
> im Request muss QUERY_LAYERS angegeben werden, der LAYERS Parameter 
> alleine reicht nicht aus. z.B. so:
> 
> http://wms1.ccgis.de/cgi-bin/mapserv?map=/data/umn/mapbender_user/mapbender_user.map&&VERSION=1.1.1&REQUEST=GetFeatureInfo&SERVICE=WMS&SRS=EPSG:4326&BBOX=-180,-90,180,90&WIDTH=220&HEIGHT=110&LAYERS=Mapbender_User&STYLES=&FORMAT=image/png&INFO_FORMAT=text/html&EXCEPTIONS=application/vnd.ogc.se_xml&FEATURE_COUNT=100&QUERY_LAYERS=Mapbender_Names&X=198&Y=35
> 
> 
>>Hat vielleicht
>>
>><!--  WARNING: Mandatory mapfile parameter '(at least one of) MAP.PROJECTION, LAYER.PROJECTION or wms_srs metadata' was missing in this context. 
>>  -->
>>
>>aus der Capabilities-Abfrage etwas damit zu tun?
> 
> 
> Jeder Layer muss immerr eine Angabe zum Quellprojektionssystem 
> enthaltenb, sonst kann MapServer nichts damit anfangen. Pinzipiell 
> sollte das Capabilities-Dokument frei von WARNINGs sein, meist sind die 
> Erläuterungen ein guter Augangspunkt fürs das entkäfern.
> 
> Gruß, Arnulf.
> 
> 
>>'Verwende MapServer-Version 4.0.1 (Update geplant). In der WEB-Sektion
>>habe ich TEMPLATE, IMAGEPATH, IMAGEURL und LOG definiert.
>>
>>Kann mir jemand weiterhelfen? Danke vorab.
>>
>>
>>Schöne Grüße,
>>Olaf
>>
>>_______________________________________________
>>Mapserver-DE mailing list
>>Mapserver-DE at freegis.org
>>https://freegis.org/mailman/listinfo/mapserver-de
> 
> 
> 
> _______________________________________________
> Mapserver-DE mailing list
> Mapserver-DE at freegis.org
> https://freegis.org/mailman/listinfo/mapserver-de


-- 

_________________________________________________

MapMedia
Kartographie und raumbezogene Informationssysteme

Heilbronner Straße 10
D-10711 Berlin

fon:  +49.(0)30.89 06 82 70
fax:  +49.(0)30.89 06 82 73
mail: jt at mapmedia.de
net:  www.mapmedia.de
pgp:  on demand
_________________________________________________




This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)