[Mapserver-DE] getFeatureInfo - aber wie?

Imkemeyer, Olaf (Innenministerium) Olaf.Imkemeyer at im.landsh.de
Mit Apr 12 14:44:15 CEST 2006


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.)?

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





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