Zwemwater dataset geeft een java runtime exception

Ik gebruik het onderstaande endpoint om informatie op te halen over zwemplekken.

https://ogcgeo.zwemwater.nl/geoserver/zwr-wfs/wfs?service=WFS&request=GetFeature&typeName=zwr-wfs:Zwemwaterlocatie&outputFormat=json&featureID=ZWR_ZWEMWATERLOCATIE_993%207

Ik krijg daar nu een foutmelding op terwijl het eerder wel werkte:

<ows:ExceptionReport xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0.0" xsi:schemaLocation="http://www.opengis.net/ows/1.1 https://ogcgeo.zwemwater.nl/geoserver/schemas/ows/1.1.0/owsAll.xsd">
<ows:Exception exceptionCode="NoApplicableCode">
<ows:ExceptionText>java.lang.RuntimeException: java.lang.RuntimeException: Error applying mapping with targetAttribute zwr:monsterpunt java.lang.RuntimeException: Error applying mapping with targetAttribute zwr:monsterpunt Error applying mapping with targetAttribute zwr:monsterpunt java.lang.RuntimeException: Error applying mapping with targetAttribute zwr:monster Error applying mapping with targetAttribute zwr:monster java.lang.RuntimeException: Error applying mapping with targetAttribute zwr:resultaat Error applying mapping with targetAttribute zwr:resultaat java.lang.RuntimeException: Error applying mapping with targetAttribute zwr:resultaatPublicatie/zwr:publiceerder Error applying mapping with targetAttribute zwr:resultaatPublicatie/zwr:publiceerder</ows:ExceptionText>
</ows:Exception>
</ows:ExceptionReport>

Deze service staat ook gewoon in het georegister:

Als ik de CSV vandaar probeer te downloaden krijg ik ook een foutmelding in de CSV:

<?xml version="1.0" encoding="UTF-8"?><ows:ExceptionReport xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ows="http://www.opengis.net/ows" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0.0" xsi:schemaLocation="http://www.opengis.net/ows https://ogcgeo.zwemwater.nl/geoserver/schemas/ows/1.0.0/owsExceptionReport.xsd">
<ows:Exception exceptionCode="NoApplicableCode">
<ows:ExceptionText>java.lang.RuntimeException: Unable to obtain connection: Cannot get a connection
Unable to obtain connection: Cannot get a connection
Cannot get a connection
Timeout waiting for idle object</ows:ExceptionText>
</ows:Exception>
</ows:ExceptionReport>

Ik weet niet of er wijzigingen zijn gemaakt. De WMS data wordt nu ook via PDOK aangeboden zie ik, maar ik weet niet of daarmee de WFS “uit de lucht” is gehaald?

Hier kun je zien dat de WFS wel bestaat: https://ogcgeo.zwemwater.nl/geoserver/zwr-wfs/wfs?service=WFS&request=GetCapabilities

Bedankt @marco_duiker. Ja dat had ik gezien, blijkbaar is het een server issue.

Maar ik vroeg me af of deze service inmiddels ook ergens anders draaide (omdat een paar services naar PDOK zijn) en daarom niet meer bug-vrij is.

Hier kun je zien dat de features ook gewoon uitgeserveerd worden: https://ogcgeo.zwemwater.nl/geoserver/zwr-wfs/wfs?request=GetFeature&service=WFS&version=1.1.0&outputFormat=application%2Fjson&typeName=zwr-wfs:Zwemplek.

het lijkt me dat er iets mis is met je request

Dat lijkt aan het featuretype te liggen. Alles lijkt naar behoren te werken, zoals je bij Zwemplek kunt zien:

https://ogcgeo.zwemwater.nl/geoserver/zwr-wfs/wfs?service=WFS&request=GetFeature&typeName=zwr-wfs:Zwemplek&outputFormat=json&featureID=ZWR_ZWEMPLEK_1676

levert keurig netjes een json op. Maar bij Zwemwaterlocatie levert 't niks op, zelfs niet als je de featureID weglaat (dan zou je alles moeten krijgen in theorie), maar zelfs dat levert een foutmelding op.
ALs je de foutmelding leest, lijkt het er op dat er wat attributen uit andere tabellen gehaald moeten worden, wat niet lukt (of zoiets). Denk dat er aan de achterkant iets is omgevallen bij een update of zo…

@sbjager @marco_duiker
Ja het is niet echt consequent.

Deze call werkt nu net wel zonder foutmelding:
https://ogcgeo.zwemwater.nl/geoserver/zwr-wfs/wfs?TYPENAME=zwr-wfs%3AGebied&REQUEST=GetFeature&OUTPUTFORMAT=json&COUNT=20&SERVICE=WFS

Als ik echter een startindex meegeef, krijg ik weer een server error.
https://ogcgeo.zwemwater.nl/geoserver/zwr-wfs/wfs?TYPENAME=zwr-wfs%3AGebied&REQUEST=GetFeature&OUTPUTFORMAT=json&COUNT=20&SERVICE=WFS&STARTINDEX=20

<ows:ExceptionReport xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0.0" xsi:schemaLocation="http://www.opengis.net/ows/1.1 https://ogcgeo.zwemwater.nl/geoserver/schemas/ows/1.1.0/owsAll.xsd">
<ows:Exception exceptionCode="NoApplicableCode">
<ows:ExceptionText>java.lang.RuntimeException: java.lang.RuntimeException: Error applying mapping with targetAttribute zwr:zwemwaterlocatie java.lang.RuntimeException: Error applying mapping with targetAttribute zwr:zwemwaterlocatie Error applying mapping with targetAttribute zwr:zwemwaterlocatie java.lang.RuntimeException: Error applying mapping with targetAttribute zwr:monsterpunt Error applying mapping with targetAttribute zwr:monsterpunt java.lang.RuntimeException: Error applying mapping with targetAttribute zwr:monster Error applying mapping with targetAttribute zwr:monster java.lang.RuntimeException: Error applying mapping with targetAttribute zwr:resultaat Error applying mapping with targetAttribute zwr:resultaat java.lang.RuntimeException: Error applying mapping with targetAttribute zwr:resultaatPublicatie/zwr:publiceerder Error applying mapping with targetAttribute zwr:resultaatPublicatie/zwr:publiceerder</ows:ExceptionText>
</ows:Exception>
</ows:ExceptionReport>

Niettemin als ik count 40 pak (hiermee dus inclusief data van count 20 met start index 20) werkt het wel weer zonder fouten:
https://ogcgeo.zwemwater.nl/geoserver/zwr-wfs/wfs?TYPENAME=zwr-wfs%3AGebied&REQUEST=GetFeature&OUTPUTFORMAT=json&COUNT=40&SERVICE=WFS


Het lijkt erop dat het probleem bij de monsterpunten ligt. Eigenlijk heb ik dit niet nodig.

Is er een manier om dit eruit te filteren door de query aan te passen (ik heb niet heel veel ervaring met geoserver ik kom niet echt verder na wat zoekwerk in de documentatie).

Ik weet dat ik dat PropertyName kan gebruiken, maar hoe doe ik dit voor child properties (in dit geval zwemwaterlocaties in de gebieden)? Dan kan ik op die monsterpunt eruit filteren.

Het lijkt erop alsof in de brondata er geen goede feature index kolom is opgenomen. Dan kan response paging (getriggerd door STARTINDEX) niet goed werken. COUNT kan dan wel weken, daar is zo’n index niet voor nodig.

Is er een manier om properties eruit te filteren?

Reden dat ik met een count en startindex werk is de enorme hoeveelheid data (vooral in monsterpunten), als ik dat weg kan laten kan ik misschien 1 call doen.

Het lijkt er inderdaad op dat de server struikelt over data in monsterpunten in een specifiek gebied.

startIndex = 1
https://ogcgeo.zwemwater.nl/geoserver/zwr-wfs/wfs?TYPENAME=zwr-wfs%3AGebied&REQUEST=GetFeature&OUTPUTFORMAT=json&COUNT=1&SERVICE=WFS&startindex=1

startIndex = 2

https://ogcgeo.zwemwater.nl/geoserver/zwr-wfs/wfs?TYPENAME=zwr-wfs%3AGebied&REQUEST=GetFeature&OUTPUTFORMAT=json&COUNT=1&SERVICE=WFS&startindex=2

startIndex = 3
https://ogcgeo.zwemwater.nl/geoserver/zwr-wfs/wfs?TYPENAME=zwr-wfs%3AGebied&REQUEST=GetFeature&OUTPUTFORMAT=json&COUNT=1&SERVICE=WFS&startindex=3
^ Deze geeft een runtime error.

startIndex = 4

https://ogcgeo.zwemwater.nl/geoserver/zwr-wfs/wfs?TYPENAME=zwr-wfs%3AGebied&REQUEST=GetFeature&OUTPUTFORMAT=json&COUNT=1&SERVICE=WFS&startindex=4

^ Werkt weer gewoon.

Als gebruiker zou ik geen waarde aan deze service durven ontlenen. Ik ben bang dat de leverancier daarvan aan de slag moet.

Hallo Kasper,

Ik had je al een prive-berichtje gestuurd, maar zet het ook nog even bij dit bericht op het forum zelf zodat bij toekomstige / andere vragen de lezers van het geoforum direct weten waar ze zich kunnen melden met vragen.

Neem s.v.p. contact op met de beheerder van de service. Je vindt de contactgegevens bij dit metadata-record over www.zwemwater.nl in het NGR:

En Marco: dank voor je hulp, hier!

Uiteindelijk bleek er iets misgegaan te zijn bij een update aan het systeem afgelopen maart.
Het lijkt nu opgelost. Ik kan de eindpunten weer aanroepen volgens de specificatie met indexering.

2 likes

Dit topic is 180 dagen na het laatste antwoord automatisch gesloten. Nieuwe antwoorden zijn niet meer toegestaan.