sogis / json2qgs

Repo für json2qgs, jsons mit assets und serviceübergreifendes permission.json
0 stars 2 forks source link

Transparenz fehlt bei Druck mit Facadelayer #41

Closed ojeker closed 3 years ago

ojeker commented 3 years ago

Hinweise:

Folgend das log für den Aufruf "zon oben, stfv unten":

print_1      | [2021-09-28 10:16:10,486] INFO in runtime_config: Reading runtime config 'config/default/printConfig.json'
print_1      | [2021-09-28 10:16:10,491] INFO in server: POST params: {'map0:GRID_INTERVAL_Y': '500', 'map0:GRID_INTERVAL_X': '500', 'map0:ROTATION': '0', 'map0:EXTENT': '2632801.9,1242862.7,2633801.9,1244202.7', 'map0:SCALE': '5000', 'map0:LAYERS': 'ch.so.afu.gefahrenhinweiskarte_stfv,ch.so.afu.gewaesserschutz.zonen_areale', 'OPACITIES': '255,155', 'LAYERS': 'ch.so.afu.gefahrenhinweiskarte_stfv,ch.so.afu.gewaesserschutz.zonen_areale', 'TRANSPARENT': 'true', 'FORMAT': 'pdf', 'TEMPLATE': 'A4 hoch', 'SRS': 'EPSG:2056', 'DPI': '200'}
ogc_1        | [2021-09-28 10:16:10,508] DEBUG in ogc_service: Getting permissions for identity None
ogc_1        | [2021-09-28 10:16:10,524] INFO in ogc_service: Forward POST request to http://qgs/ows/qwc_print
ogc_1        | [2021-09-28 10:16:10,525] INFO in ogc_service:   SERVICE = WMS
ogc_1        |   VERSION = 1.3.0
ogc_1        |   REQUEST = GetPrint
ogc_1        |   MAP0:GRID_INTERVAL_Y = 500
ogc_1        |   MAP0:GRID_INTERVAL_X = 500
ogc_1        |   MAP0:ROTATION = 0
ogc_1        |   MAP0:EXTENT = 2632801.9,1242862.7,2633801.9,1244202.7
ogc_1        |   MAP0:SCALE = 5000
ogc_1        |   MAP0:LAYERS = ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_nationalstrassen,ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_gasleitungen,ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_durchgangsstrassen,ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_eisenbahn,ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_betriebsaeral,ch.so.afu.gefahrenhinweiskarte_stfv.nationalstrassen,ch.so.afu.gefahrenhinweiskarte_stfv.gasleitungen,ch.so.afu.gefahrenhinweiskarte_stfv.durchgangsstrassen,ch.so.afu.gefahrenhinweiskarte_stfv.eisenbahn,ch.so.afu.gefahrenhinweiskarte_stfv.betriebe,ch.so.afu.gewaesserschutz.zonen_areale
ogc_1        |   OPACITIES = 255,255,255,255,255,255,255,255,255,255,155
ogc_1        |   LAYERS = ch.so.afu.gefahrenhinweiskarte_stfv,ch.so.afu.gewaesserschutz.zonen_areale
ogc_1        |   TRANSPARENT = true
ogc_1        |   FORMAT = pdf
ogc_1        |   TEMPLATE = A4 hoch
ogc_1        |   SRS = EPSG:2056
ogc_1        |   DPI = 200
ogc_1        | [pid: 7|app: 0|req: 2/2] 172.31.0.2 () {32 vars in 396 bytes} [Tue Sep 28 10:16:10 2021] POST /ogc/wms => generated 68313 bytes in 264 msecs (HTTP/1.1 200) 1 headers in 50 bytes (5 switches on core 1)
print_1      | [2021-09-28 10:16:10,769] INFO in server: Forwarding request to http://ogc:9090/ogc/wms
print_1      | {'SERVICE': 'WMS', 'VERSION': '1.3.0', 'REQUEST': 'GetPrint', 'MAP0:GRID_INTERVAL_Y': '500', 'MAP0:GRID_INTERVAL_X': '500', 'MAP0:ROTATION': '0', 'MAP0:EXTENT': '2632801.9,1242862.7,2633801.9,1244202.7', 'MAP0:SCALE': '5000', 'MAP0:LAYERS': 'ch.so.afu.gefahrenhinweiskarte_stfv,ch.so.afu.gewaesserschutz.zonen_areale', 'OPACITIES': '255,155', 'LAYERS': 'ch.so.afu.gefahrenhinweiskarte_stfv,ch.so.afu.gewaesserschutz.zonen_areale', 'TRANSPARENT': 'true', 'FORMAT': 'pdf', 'TEMPLATE': 'A4 hoch', 'SRS': 'EPSG:2056', 'DPI': '200'}
print_1      | [pid: 10|app: 0|req: 2/2] 172.31.0.1 () {28 vars in 342 bytes} [Tue Sep 28 10:16:10 2021] POST /print/wms => generated 68313 bytes in 286 msecs (HTTP/1.1 200) 2 headers in 101 bytes (67 switches on core 1)
qgs_1        | [93][10:16:10] QgsPostRequestHandler::parseInput
qgs_1        | [93][10:16:10] QgsHttpRequestHandler::readPostBody
qgs_1        | [93][10:16:10] length is: 1098
qgs_1        | [93][10:16:10] SERVICE=WMS&VERSION=1.3.0&REQUEST=GetPrint&MAP0%3AGRID_INTERVAL_Y=500&MAP0%3AGRID_INTERVAL_X=500&MAP0%3AROTATION=0&MAP0%3AEXTENT=2632801.9%2C1242862.7%2C2633801.9%2C1244202.7&MAP0%3ASCALE=5000&MAP0%3ALAYERS=ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_nationalstrassen%2Cch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_gasleitungen%2Cch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_durchgangsstrassen%2Cch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_eisenbahn%2Cch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_betriebsaeral%2Cch.so.afu.gefahrenhinweiskarte_stfv.nationalstrassen%2Cch.so.afu.gefahrenhinweiskarte_stfv.gasleitungen%2Cch.so.afu.gefahrenhinweiskarte_stfv.durchgangsstrassen%2Cch.so.afu.gefahrenhinweiskarte_stfv.eisenbahn%2Cch.so.afu.gefahrenhinweiskarte_stfv.betriebe%2Cch.so.afu.gewaesserschutz.zonen_areale&OPACITIES=255%2C255%2C255%2C255%2C255%2C255%2C255%2C255%2C255%2C255%2C155&LAYERS=ch.so.afu.gefahrenhinweiskarte_stfv%2Cch.so.afu.gewaesserschutz.zonen_areale&TRANSPARENT=true&FORMAT=pdf&TEMPLATE=A4+hoch&SRS=EPSG%3A2056&DPI=200
qgs_1        | [93][10:16:10] inserting pair MAP // /data/qwc_print.qgs into the parameter map
qgs_1        | [93][10:16:10] Error at line 1, column 1: error occurred while parsing element.
qgs_1        | [93][10:16:10] inserting pair SERVICE // WMS into the parameter map
qgs_1        | [93][10:16:10] inserting pair VERSION // 1.3.0 into the parameter map
qgs_1        | [93][10:16:10] inserting pair REQUEST // GetPrint into the parameter map
qgs_1        | [93][10:16:10] inserting pair MAP0:GRID_INTERVAL_Y // 500 into the parameter map
qgs_1        | [93][10:16:10] inserting pair MAP0:GRID_INTERVAL_X // 500 into the parameter map
qgs_1        | [93][10:16:10] inserting pair MAP0:ROTATION // 0 into the parameter map
qgs_1        | [93][10:16:10] inserting pair MAP0:EXTENT // 2632801.9,1242862.7,2633801.9,1244202.7 into the parameter map
qgs_1        | [93][10:16:10] inserting pair MAP0:SCALE // 5000 into the parameter map
qgs_1        | [93][10:16:10] inserting pair MAP0:LAYERS // ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_nationalstrassen,ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_gasleitungen,ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_durchgangsstrassen,ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_eisenbahn,ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_betriebsaeral,ch.so.afu.gefahrenhinweiskarte_stfv.nationalstrassen,ch.so.afu.gefahrenhinweiskarte_stfv.gasleitungen,ch.so.afu.gefahrenhinweiskarte_stfv.durchgangsstrassen,ch.so.afu.gefahrenhinweiskarte_stfv.eisenbahn,ch.so.afu.gefahrenhinweiskarte_stfv.betriebe,ch.so.afu.gewaesserschutz.zonen_areale into the parameter map
qgs_1        | [93][10:16:10] inserting pair OPACITIES // 255,255,255,255,255,255,255,255,255,255,155 into the parameter map
qgs_1        | [93][10:16:10] inserting pair LAYERS // ch.so.afu.gefahrenhinweiskarte_stfv,ch.so.afu.gewaesserschutz.zonen_areale into the parameter map
qgs_1        | [93][10:16:10] inserting pair TRANSPARENT // true into the parameter map
qgs_1        | [93][10:16:10] inserting pair FORMAT // pdf into the parameter map
qgs_1        | [93][10:16:10] inserting pair TEMPLATE // A4 hoch into the parameter map
qgs_1        | [93][10:16:10] inserting pair SRS // EPSG:2056 into the parameter map
qgs_1        | [93][10:16:10] inserting pair DPI // 200 into the parameter map
qgs_1        | [93][10:16:10] formatString is: pdf
qgs_1        | [93][10:16:10] enable on the fly projection
qgs_1        | [93][10:16:10] Calculating layerset using 2 layers, 0 styles and CRS CH1903+ / LV95
qgs_1        | [93][10:16:10] Trying to get layer ch.so.afu.gefahrenhinweiskarte_stfv//
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_nationalstrassen
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_gasleitungen
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_durchgangsstrassen
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_eisenbahn
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_betriebsaeral
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.nationalstrassen
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.gasleitungen
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.durchgangsstrassen
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.eisenbahn
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.betriebe
qgs_1        | [93][10:16:10] Trying to get layer ch.so.afu.gewaesserschutz.zonen_areale//
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gewaesserschutz.zonen_areale
qgs_1        | [93][10:16:10] Calculating layerset using 11 layers, 0 styles and CRS 
qgs_1        | [93][10:16:10] Trying to get layer ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_nationalstrassen//
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_nationalstrassen
qgs_1        | [93][10:16:10] Trying to get layer ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_gasleitungen//
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_gasleitungen
qgs_1        | [93][10:16:10] Trying to get layer ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_durchgangsstrassen//
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_durchgangsstrassen
qgs_1        | [93][10:16:10] Trying to get layer ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_eisenbahn//
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_eisenbahn
qgs_1        | [93][10:16:10] Trying to get layer ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_betriebsaeral//
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.konsultationsbereich_betriebsaeral
qgs_1        | [93][10:16:10] Trying to get layer ch.so.afu.gefahrenhinweiskarte_stfv.nationalstrassen//
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.nationalstrassen
qgs_1        | [93][10:16:10] Trying to get layer ch.so.afu.gefahrenhinweiskarte_stfv.gasleitungen//
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.gasleitungen
qgs_1        | [93][10:16:10] Trying to get layer ch.so.afu.gefahrenhinweiskarte_stfv.durchgangsstrassen//
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.durchgangsstrassen
qgs_1        | [93][10:16:10] Trying to get layer ch.so.afu.gefahrenhinweiskarte_stfv.eisenbahn//
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.eisenbahn
qgs_1        | [93][10:16:10] Trying to get layer ch.so.afu.gefahrenhinweiskarte_stfv.betriebe//
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gefahrenhinweiskarte_stfv.betriebe
qgs_1        | [93][10:16:10] Trying to get layer ch.so.afu.gewaesserschutz.zonen_areale//
qgs_1        | [93][10:16:10] Checking layer: ch.so.afu.gewaesserschutz.zonen_areale
qgs_1        | [93][10:16:10] Checking byte array is ok to set...
qgs_1        | [93][10:16:10] Byte array looks good, setting response...
qgs_1        | [93][10:16:10] Sending HTTP response

CURL-Aufruf (In bash script)

#!/bin/bash

layers=ch.so.afu.gefahrenhinweiskarte_stfv%2Cch.so.afu.gewaesserschutz.zonen_areale
opacities=255%2C155

curl -X POST "http://localhost:5019/print/wms" \
  -H "accept: application/json" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "map0%3AGRID_INTERVAL_Y=500&map0%3AGRID_INTERVAL_X=500&map0%3AROTATION=0&map0%3AEXTENT=2632801.9%2C1242862.7%2C2633801.9%2C1244202.7&map0%3ASCALE=5000&map0%3ALAYERS=$layers&OPACITIES=$opacities&LAYERS=$layers&TRANSPARENT=true&FORMAT=pdf&TEMPLATE=A4%20hoch&SRS=EPSG%3A2056&DPI=200" \
  --output print.pdf
mwa commented 3 years ago

Das Problem mit falschen Transparenzen ist ein Bug mit QGIS Server 2.18, wenn die LAYERS nicht mit den map0:LAYERS und OPACITIES übereinstimmen. Workaround in qwc-ogc-service:v2.0.6.

In den aktuellen QGIS Server 3.x Versionen ist dieser Fehler bereits seit längerem behoben.