Closed ojeker closed 3 years ago
Aufgetreten bisher im ogcConfig.json (online_resources) und im plotinfoConfig.json (siehe Beispiele Oliver)
Je nach JSON Validator werden die Platzhalter in diesen URLs offenbar nicht immer akzeptiert.
Das PlotInfo Service JSON Schema können wir entsprechend anpassen und den Constraint für das Format uri
entfernen.
@pfeimich Verwendet ihr ENV Variablen ($$VARNAME$$
) für die online_resources
im ogcConfig
? Allenfalls könnte dort der Wert leicht angepasst werden, damit die URL trotzdem validiert wird:
"online_resources": {
// vorher
"service": "$$SERVICE_URL$$",
// angepasst, damit URI Format erfüllt sein sollte
"service": "https://$$SERVICE_URL$$",
// ...
}
SERVICE_URL=https://geo.so.ch/ows/somap
SERVICE_URL=geo.so.ch/ows/somap
ohne https://
Je nach dem müssten wir trotzdem das JSON Schema anpassen. Wo verwendet ihr sonst noch Platzhalter für ENV Variablen?
@mwa Auszug configGeneratorConfig.json
ogc-service
"wms_services": [
{
"name": "somap",
"print_url": "$$QGIS_SERVER_PRINT_URL$$somap_print",
"online_resources": {
"service": "$$MAP_BASE_URL$$/api/wms",
"feature_info": "$$MAP_BASE_URL$$/api/v1/featureinfo/somap",
"legend": "$$MAP_BASE_URL$$/api/v1/legend/somap"
}
}
],
"wfs_services": [
{
"name": "somap",
"wfs_url": "$$WFS_URL$$/ows/somap_wfs",
"online_resource": "$$MAP_BASE_URL$$/api/wfs"
}
]
dataproduct-service
{
"name": "dataproduct",
"config": {
"wms_service_url": "$$WMS_SERVICE_URL$$",
"qgs_resources_dir": "/qgs-resources/"
}
},
plotinfo-service
"oereb_json_url": "http://oereb-web-service.agi-oereb-test.svc/extract/reduced/json/geometry/{egrid}",
"oereb_xml_url": "https://geo-t.so.ch/api/oereb/extract/reduced/xml/geometry/{egrid}",
"oereb_pdf_url": "https://geo-t.so.ch/api/oereb/extract/reduced/pdf/geometry/{egrid}",
ccc-config
{
"name": "ccc",
"config": {
"clients": [
{
"id": "baugk",
"cccServer": "$$CCC_BASE_URL$$/ccc-service",
"title": "BauGK - GIS",
Probleme gibt es bisher beim ogc-service und beim plotinfo-service. Beim plotinfo-service ist ja https mit drin. Scheint also nicht zu funktionieren. Beim ccc-config funktioniert die Prüfung. Evtl ist hier der Parameter anders (string?) definiert? Dataproduct-service ist unklar, ob es funktioniert, da wir hier immer noch das bigint Problem bei der Prüfung haben
Die URI Format Constraints sind jetzt in allen JSON Schemas für die QWC Services bereinigt. Bei den URLs ist jetzt nur noch "type": "string"
notwendig. So können Platzhalter für ENV Variablen und in den PlotInfo URLs eingesetzt werden, ohne dass die Schemavalidierung fehlschlägt.
Zum Teil war das im Dataproduct Service oder CCC Config Service bereits vorher schon so definiert.
OK - Danke
Hoi Matthias
Wir haben an mehreren Stellen Validierungsprobleme mit URLs, sofern für diese Platzhalter konfiguriert sind.
Beispiele: "oereb_json_url": "http://oereb-web-service.agi-oereb-test.svc/extract/reduced/json/geometry/{egrid}", "oereb_xml_url": "https://geo-t.so.ch/api/oereb/extract/reduced/xml/geometry/{egrid}", "oereb_pdf_url": "https://geo-t.so.ch/api/oereb/extract/reduced/pdf/geometry/{egrid}",
Fehlermeldung beim Validieren: …is not a valid URI
War mir nicht sicher, ob dies valide URIs sind... Gemäss dem folgenden online checker auch nicht: https://quuz.org/url/uri-validate.html
--> In den Schemas "uri" replacen mit String?