Legende für WFS-Layer funktioniert nicht richtig
Für WFS-Layer funktioniert die Generierung der Legende nicht mehr richtig.
Teilweise werden falsche Geometry-Types ermittelt. Das lässt sich noch umgehen, indem im Service der GeometryType definiert wird.
Wenn aus der DescripeFeatureType-Anfrage gar kein GeometryType ermittelt werden kann greift aber auch diese Angabe nicht.
Bei der Auswertung der DescripeFeatureType-Anfrage wird erwartet, dass der Typ unterhalb des elemet ist oder im nächsten Nachbar, bei uns (per geoserver) ist es allerdings im vorhergehenden Nachbar.
Bei Styles mit Conditions führt eine Fallback-Rule ohne Condition zu einem Fehler.
Comments (13)
-
-
- changed status to open
-
-
assigned issue to
-
assigned issue to
-
reporter Hallo,
Als schnelles Feedback schonmal:
Ein Teil der Probleme taucht auch im Verkehrsportal Hamburg auf.
https://geoportal-hamburg.de/verkehrsportal/?Map/layerIds=717,47&visibility=true,true&transparency=0,0
Hier in die Legende schauen. (gibt es eigentlich einen URL-Parameter um die Legende beim Start zu öffnen?)Für alles weitere bereite ich noch ein Beispiel Portal auf und hänge es an.
-
gibt es eigentlich einen URL-Parameter um die Legende beim Start zu öffnen?
Sieht so aus, als wenn dies aktuell nicht der Fall ist, hier ist zumindes keiner gelistet:
https://bitbucket.org/geowerkstatt-hamburg/masterportal/src/dev/doc/urlParameter.mdSo einen Parameter fände ich auch sinnvoll.
-
Ist der Fehler, dass 2 mal dasselbe Icon in der Legende angezeigt wird?
-
@Jan Bücher: Wie sieht es mit dem Beispielportal aus?
-
reporter - attached sample_wfslegend.zip
-
reporter - attached Screenshot_2023-11-07_191229.png
-
reporter Ich habe ein Beispiel-Portal angehängt, in dem hoffentlich alle Probleme die bei uns aufgetreten sind abgedeckt sind. (Getestet mit Version 2.38.0)
Bei den Layern “Lichtsignalanlagen” und “Parkraumbewirtschaftung” werden in der Legende Einträge erstellt für Geometrie-Typen die garnicht vorkommen (Siehe Screenshot). Das ist der Effekt, den ich auch auf dem Verkehrsportal Hamburg gesehen habe. Dann ist das evtl. in der 2.39 schon behoben.
Für die Layer “Share Now Fahrzeuge”, “Nextbike Stationen” und “Behindertenparkplätze” wird keine überhaupt keine Legende erstellt (teilweise gibt es auch Fehler in der Konsole).
Beim Layer “Standorte Abstellflächen Mikromobilitätsangebote“ gibt es beim erzeugen der Legende einen Fehler weil die erste Rule eine Condition hat und die zweite nicht.
-
Zwischenstand:
Ich habe mir den Layer “Lichtsignalanlagen” im Beispielportal angeguckt.
Der DescribeFeatureType Request liefert eine sequence unter gml:AbstractFeatureType, die
folgendes liefert:
... <xsd:element minOccurs=”0” name=”geom” nillable=”true” type=”gml:GeometryPropertyType”> </xsd:element> ...
Für die Bestimmung des Geometry-Types für die Legende wird der das
type
-Attribut dieser Zeile ausgewertet und dort wirdgml:
undPropertyType
abgeschnitten, es bleibtGeometry
. Da Geometry nichts konkretes aussagt, wirdPoint
,Polygon
undLineString
zurückgegeben und diese 3 Typen werden in der Legende dargestellt.Ich habe kein Element gefunden, dass den Geometry-type
Point
enthält.Der type müsste
”gml:PointPropertyType”
sein!Der Geometry-type kann am Layer überschrieben werden mit dem Attribut
styleGeometryType
, der dann genutzt wird, siehe https://bitbucket.org/geowerkstatt-hamburg/masterportal/src/dev/doc/config.json.de.md.Ich habe den Eindruck, dass der DescribeFeatureType Request die falsche Antwort liefert.
Beim Layer “Parkraumbewirtschaftung” verhält es sich genauso.
-
Layer "sharenow", "nextbike","Behindertenparkplätze" : Auslesen des DescribeFeatureType Request wurde angepasst.
Layer mit condition an nur einer rule “Standorte Abstellflächen Mikromobilitätsangebote“: bugfixDamit die Legende dann so aussieht:
habe ich in der config.json folgendes ergänzt:
{ "id": "lichtsignalanlagen", ... "styleGeometryType": "Point" }, { "id": "Parkraumbewirtschaftung", ... "styleGeometryType": "Polygon" },
-
- changed status to resolved
Ist gefixt in der Version 2.40.0, die am 06.12.2023 released wird.
- Log in to comment
Moin, wäre es möglich ein Beispielportal (Als Anhang oder URL) bereistzustellen, aus dem der Fehler hervorgeht?