Für mapfish (3) generierter Ressourcen-Pfad ist fehlerhaft

Issue #533 resolved
SchBe created an issue

Zum Abruf von Icons für WFS-Layer wird der Pfad bzw. die URL zu den Ressourcen vom Masterportal an mapfish übergeben. Dieser kann über den Parameter wfsImgPath in der config.js definiert werden. Ist der Sever, auf dem das Masterportal betrieben wird, nicht localhost, so wird allerdings immer eine URL mit lgv-config/img an mapfish weiter gegeben.

Im Branch https://bitbucket.org/geowerkstatt-hamburg/masterportal/branch/build-img-path-for-mapfish hatte ich versucht kurzfristig abhilfe zu schaffen. Ich habe dann jedoch feststellen müssen, dass der Aufwand zum beheben des Bugs zu groß wird.

Mit der Änderung wird zunächst unterschieden, ob ein Bild mit absoluter oder relativer URL angegeben wird. Entfernt habe ich hier die Ausnahme für localhost, die macht es nur schwierig das lokal zu testen und mir fällt auch kein Grund ein, warum man localhost ausnehmen sollte. Wenn statt einer URL nur ein Name eines Bildes übergeben wird, so wird getestet ob wfsImgPath gesetzt ist. Wenn ja verbaut er das noch in den Pfad (wieder mit Unterscheidung ob absolute oder relative URL). Wenn diese Regeln nicht sinnvoll verwendet werden können wird /lgv-config/img/ als Fallback genommen. (getImageName muss auch dringend refactored werden.). Leider schlägt nun ein Test im Style-Modul fehl, die Änderung greift wohl tiefer ein als zunächst gedacht.

Ich habe die Priorität auf kritisch gesetzt, da mehrere IP davon betroffen sind und so keine WFS-Layer drucken können.

Comments (4)

  1. Heiko Friedrich

    Hallo, das Problem kann als Notlösung angegangen werden:

    In der masterportal.js ein „/“ an Stelle nach dem „img“ setzen:

    „…...indexOf("localhost")&&(n=e+"/lgv-config/img/"+this.getImageName(t)) …..“ (ca. Zeile 52, in Version 2.7.2 war es in Zeile 52, in 2.10.0 ist das irgendwo später. Die masterporal.js hatte ich dafür im “notepad++” ohne erzwungenen Zeilenumbruch geöffnet.)

    Dann einen Alias für den Pfad im Apache vergeben:

    httpd.conf öffnen und Alias wie folgt vergeben ->

    Alias "/lgv-config/img" "c:/Apache24/htdocs/MP-Norderstedt/2.7.2/resources/…../…" (“…” entsprechend dem WFS-image-Pfad )

    Dann funktioniert es.

    Ehrlich gesagt wundert es mich, dass der Bug seit November 2020 gemeledt ist und immer noch nicht behoben wurde. 😕

  2. Log in to comment