Subdomain in Adresse des Druckergebnisses (Mapfish3)

Issue #497 resolved
Dominik Fröhlich created an issue

Hallo,

beim Einrichten des Druckdienstes für unser Testportal fiel mir auf, dass der Link auf das Druckergebnis die subdomain enthält, z.B.

https://geoportal.freiburg.de/freigis/geoportal_freiburg_de/apps/print/print/report/c7fcdfa1-ebe1-4169-a48b-a9978647103f@dd379746-3efc-44af-81c1-e331b6bb0e7c

statt

https://geoportal.freiburg.de/geoportal_freiburg_de/apps/print/print/report/c7fcdfa1-ebe1-4169-a48b-a9978647103f@dd379746-3efc-44af-81c1-e331b6bb0e7c

wodurch der reverse-proxy sich nicht angesprochen fühlt und eine 404 geworfen wird.

Ist das ein bekannt / ein Konfigurationsfehler?

Gruß

Dominik

Version ist die 2.5.4, aber noch nicht auswählbar.

Comments (7)

  1. Inka Dudek

    Hallo,

    ich habe das Portal mit dem Chrome gestartet und “Drucken” aufgerufen. Ich kann den Fehler nicht nachstellen, bei mir wird z.B. diese URL ohne Subdomain aufgerufen:

    https://geoportal.freiburg.de/geoportal_freiburg_de/apps/print/print/status/1ec61747-1d19-4e7f-9d6d-a8b44f60586c@9156a701-ca1a-4fbe-b4ed-5596db13757e.json

    sind sie im Intranet, kann es daran liegen?

    Dann kommt ein Hinweis auf eine fehlerhafte Konfiguration:

    Viele Grüße

    Inka Dudek

  2. Dominik Fröhlich reporter

    Hallo,

    das liegt an einer apache rewrite-rule, die ich zwischenzeitig als Workaround implementiert hatte. Ich habe sie mal deaktiviert, jetzt geht wieder nichts mehr und er sucht:

    https://geoportal.freiburg.de/freigis/geoportal_freiburg_de/apps/print/print/report/4ebf0492-52e3-4601-9c4f-3887d9701a5a@9156a701-ca1a-4fbe-b4ed-5596db13757e

    Ich teste aus dem Internet mit verschiedenen Browsern (FF und versch. chromium).

    Gruß

    Dominik Fröhlich

    EDIT: Das Template funktioniert noch nicht so richtig. Ich bekomme statt der Karte nur einen roten Kasten (mit dem rewrite-Workaround, sonst gar nichts). Beim Versuch das zu lösen hatte ich das Template vermutlich verbastelt. Sollte jetzt aber wieder funktionieren (also zumindest mal keinen Fehler werfen).

  3. Sven Junker-Beyel

    Moin,

    also zum einen scheint ein Problem in der config.yml bei der Legende vorzuliegen. Bei dem aufruf: https://geoportal.freiburg.de/geoportal_freiburg_de/apps/print/print/status/6890d6e0-623b-4ff0-8c3a-d3ecf7b7b014@60021adf-4843-4648-ba25-de4756028ab5.json bekomme ich diesen Fehler angezeigt:

    {
        done: true, 
        status: "error",
        elapsedTime: 1746,
        waitingTime: 0,
        error: "org.mapfish.print.ExtraPropertyException: Extra properties were found in the request data at: (spec.attributes.legend|legendAttribute): Extra Properties: * layers All allowed properties are: * classes * name * dpi * icons",
        downloadURL: "/print/print/report/6890d6e0-623b-4ff0-8c3a-d3ecf7b7b014@60021adf-4843-4648-ba25-de4756028ab5"
      }
    

    Sie könnten Ihre config mit der von z.B. geo-online abgleichen: https://geoportal-hamburg.de/geoportal_metropolregion_hamburg_de/mapfish_print/print/master/capabilities.json

    Zum Anderen scheint beim proxy etwas noch nicht zu stimmen, da die Subdomain portalseitig nicht eingefügt wird. Siehe folgendes JS-Snippet aus dem print-Modul:

    window.open(this.get("mapfishServiceUrl") + printAppId + "/report/" + response.ref);

    Die URL wird aus der rest-services.json über die ID geholt und direkt daran die konfigurierte printAppId angehangen.

    Vielleicht liegt es auch an dem Eintrag in der masterportal/devtools/proxyconf.json. Dort müsste der Eintrag vermutlich wie folgt aussehen:

      "/geoportal_freiburg_de/": {
        "target": "http://geoportal.freiburg.de/",
        "pathRewrite": {
          "^/_geoportal_freiburg_de/": ""
        }
      },
    

    VG
    Sven Junker-Beyel

  4. Dominik Fröhlich reporter

    Hallo,

    eine proxyconf.json habe ich gar nicht, da ich das komprimierte example aus den Downloads verwende. Aber die service url war ein guter Tipp. Da stand nämlich “url“: “/geoportal_freiburg_de/apps/print/“. Das wird dann offenbar an die gerade geöffnete url angehängt.

    Ich habe jetzt die volle url (https://geoportal.freiburg.de/apps/print/) angegeben und es scheint zu funktionieren.

    Danke! Ich habe mich schon viele Apache-rewrites schreiben sehen…

    Gruß

    Dominik Fröhlich

    EDIT: Jetzt benutzt er leider zum Download des Drucks einen falschen Link:

    https://geoportal.freiburg.de/apps/print/print/report/c7fcdfa1-ebe1-4169-a48b-a9978647103f@dd379746-3efc-44af-81c1-e331b6bb0e7c

    statt:

    https://geoportal.freiburg.de/geoportal_freiburg_de/apps/print/print/report/c7fcdfa1-ebe1-4169-a48b-a9978647103f@dd379746-3efc-44af-81c1-e331b6bb0e7c

    Habe rewrite entsprechend angepasst (das bleibt wenigstens statisch, da ist der workaround praktikabel…)

    Er scheint jedenfalls zuerst die Proxy zu verwenden und den Hostnamen umzuwandeln. Zum Download benutzt er ihn dann aber wieder nicht.

  5. Sven Junker-Beyel

    Vermutlich müsste die URL in der rest-services.json so lauten: https://geoportal.freiburg.de/print/print, da die Templates unter <tomcat_webapps>/print/print-apps/ abgelegt sind.

    Bei uns ist die "https://geoportaltest.metropolregion.hamburg.de/mapfish_print/print/", eingetragen und die Templates unter <tomcat_webapps>/mapfish_print/print-apps/ abgelegt sind.

    In der proxy.conf des Apache ist bei uns folgendes eingetragen:

    ProxyPass /geodaten_metropolregion_hamburg_de http://geodaten.metropolregion.hamburg.de
    ProxyPassReverse /geodaten_metropolregion_hamburg_de http://geodaten.metropolregion.hamburg.de
    
    ProxyPass /geoportal_metropolregion_hamburg_de https://geoportal.metropolregion.hamburg.de
    ProxyPassReverse /geoportal_metropolregion_hamburg_de https://geoportal.metropolregion.hamburg.de
    

  6. Dominik Fröhlich reporter

    Hallo,

    die url für den rest service stimmt schon. Der apache reverse-proxiet /geoportal_freiburg_de/apps auf http://localhost:8080.

    Damit können auch die capabilities abgefragt werden und der status kommt ebenfalls durch. Nur beim Abfragen der gedruckten pdf wird auf das geoportal_freiburg_de/ verzichtet und direkt geoportal.freiburg.de/apps benutzt. Das scheint mir unbeabsichtigt, da uneinheitlich.

    EDIT: typo

  7. Log in to comment