- Created by Jasper Missinne, last modified by Luc Geyskens on 21 May, 2021
You are viewing an old version of this page. View the current version.
Compare with Current View Page History
« Previous Version 6 Next »
Voor meer informatie rond de werking van Uitzonderingen in MAGDA 2.0 diensten, zie Werking en overzicht uitzonderingen
Algemeen
In bepaalde omstandigheden kan het zijn dat de dienst een uitzondering (of meerdere uitzonderingen) teruggeeft.
In het kort kunnen er binnen deze dienst uitzonderingen terugkomen op drie niveaus
- Niveau 1: typisch zal dit voorkomen bij een fout tegenover de xsd
- Niveau 2: voornamelijk op het niveau van autorisatie (context)
- Niveau 3: voornamelijk uitzonderingen door de achterliggende dienst, voorbeeld “geen gegevens gevonden”, “onverwachte fout”, … of door specifieke controle op de vraaggegevens.
Een uitzondering bevat volgende elementen:
Wat betreft de Uitzonderingen wordt dezelfde werking gevolgd als de overige MAGDA-webservices.
De generieke foutcode zijn te vinden op Overzicht uitzonderingen MAGDA 2.0 webservices
Elementen
Element | Omschrijving |
---|---|
Identificatie | Verplicht. Maxlengte 10. De uitzonderingscode. |
Oorsprong | Minlengte 1, maxlengte 5. Duidt de bron aan van de uitzondering (MAGDA of LED) |
Type | Mogelijke waardes: · FOUT · WAARSCHUWING · INFORMATIE |
Tijdstip | Optioneel, indien aanwezig zijn Datum en Tijd beide aanwezig. · Datum: formaat jjjj-mm-dd · Tijdstip: formaat uu:mm:ss.sss |
Diagnose | Verplicht. De tekstuele omschrijving van de opgetreden uitzondering. |
Omstandigheid | Optioneel. Wordt veelal gebruikt om de foutcode van de bron door te geven of voor meer informatie te geven met betrekking tot de uitzondering. |
Annotatie | Optioneel, meerdere mogelijk. Is opgebouwd uit een naam/waarde-paar. Wordt in de RegistreerBewijs 02.00 niet gebruikt. |
Overzicht dienst-specifieke uitzonderingen
Antwoord in detail
Al de onderstaande uitzonderingen hebben als oorsprong "MAGDA".
Identificatie | Niveau | Omschrijving |
---|---|---|
10001 | 1 | Fout formaat in de vraag (XML validatie) + reden · De doorgestuurde xml is niet geldig tegenover het afgesproken xsd schema |
13001 | 2 | Geen machtiging van de afzender in deze hoedanigheid voor de gevraagde dienst · Controleer dienstnaam, dienstversie, afzender identificatie en hoedanigheid |
13101 | 2 | Combinatie van vraagelementen niet toegelaten of bepaald element niet aanwezig |
13202 | 3 | Gegevens niet opvraagbaar, geen persoonsdossier geregistreerd · Maak een inschrijving aan voor de persoon in kwestie (dienst BeheerInschrijving) |
99993 | 2 | Fout formaat in de vraag naar businessdienst toe (XML validatie) · Neem contact op met de toepassingsmanager van Corve |
99994 | 2 | Onverwachte fout bij de bron · Neem contact op met de toepassingsmanager van Corve |
99995 | 2 | Te veel gelijktijdige bevragingen · Verminder het aantal gelijktijdige bevragingen |
99996 | 2 | Bron is tijdelijk niet beschikbaar · Probeer na enige tijd opnieuw, indien de fout zich blijft voordoen neem dan contact op met de toepassingsmanager van Corve |
99997 | 2 | Kan antwoord van bron niet interpreteren · Neem contact op met de toepassingsmanager van Corve |
99998 | 2 | Fout bij XML validatie antwoord · Neem contact op met de toepassingsmanager van Corve |
99999 | 2 | Onverwachte fout, contacteer VIP · Neem contact op met de toepassingsmanager van Corve |
LED uitzonderingen
Al de onderstaande uitzonderingen hebben als oorsprong "LED".
Identificatie | Niveau | Omschrijving | Omstandigheid |
---|---|---|---|
10000 | 3 | Attribuut ontbreekt | Een beschrijving waaruit blijkt om welk attribuut het gaat. Bijvoorbeeld: Categorie. |
10001 | 3 | Geen referte Vraag opgegeven | vraag.referte |
10005 | 3 | Attribuut ongeldig (formaat) | Een beschrijving waaruit blijkt om welk attribuut het gaat. Bijvoorbeeld: Categorie. |
10010 | 3 | Attribuut niet toegestaan | Een beschrijving waaruit blijkt welk attribuut en niet toegestane waarde bevat. |
10025 | 3 | Attribuut combinatie niet toegestaan | Een beschrijving waaruit blijkt welke combinatie niet toegestaan is. |
20000 | 3 | Actie ongeldig: {} | Een beschrijving waaruit blijkt waarom de actie ongeldig was. Bijvoorbeeld bij registreerBewijs: “Bewijs reeds gekend met |
30000 | 3 | Actie conflict | Deze vraag is niet behandeld. Gelieve de vraag op een later tijdstip nogmaals uit te sturen ! |
40000 | 3 | Geen gegevens gevonden | Een beschrijving waaruit blijkt waarvoor geen gegevens werden gevonden. Bv. het INSZ waarmee de geefBewijs werd uitgevoerd |
90000 | 3 | LED Dienst (tijdelijk) niet beschikbaar | LED Dienst (tijdelijk) niet beschikbaar |
90100 | 1 | Er is een fout opgetreden tegen het XSD schema. Gelieve dit te melden aan het WebServices team ! (SOAPFault) · Deze uitzondering wordt door MAGDA omgezet in uitzonderingscode 99994 op niveau 2. | Niet van toepassing. |
90110 | 2 | Niet bestaande dienst. | ontext.naam/context.versie |
90150 | 2 | Geen referte Afzender opgegeven | afzender.referte |
90155 | 2 | Ongeldig/onrealistisch Tijdstip | verzoek.tijdstip |
90300 | 3 | Er is een systeemfout opgetreden tijdens de verwerking door de LED bedrijfslogica. Volgende vraag werd niet succesvol verwerkt: {} | Deze vraag is niet behandeld. Gelieve de vraag op een later tijdstip nogmaals uit te sturen ! |
De foutcode 10010 wordt gebruikt om aan te geven dat een bepaalde (dimensie)waarde niet toegestaan is.
Bijvoorbeeld: bij registreerBewijs een waarde voor de dimensie”Categorie” die geen deel uitmaakt van de geladen Taxonomie. Of ingeval van een geefBewijs het feit dat het INSZ niet toegelaten is (omdat het bijvoorbeeld verouderd is).
De foutcode 10025 wordt gebruikt voor niet toegestane (Binaire- én N-aire Dimensie) combinaties inclusief een niet toegelaten Afzender- Leverancier combinatie De begeleidende uitzonderingsinformatie bevat de informatie die nodig is om te bepalen over welk soort combinatie het gaat.
M.a.w. de foutboodschap bevat naast de unieke foutcode, de namen van de dimensies (bv. “Categorie” en “Graad”) waarvan de waarden werden gecombineerd in het bewijs en waarvan de waardencombinatie ongeldig werd bevonden.
Voor meer uitleg omtrent de voornoemde terminologie: zie de sectie “Taxonomiebeheer” verder in dit document.
De foutcode 20000 wordt gebruikt om aan te geven dat de gevraagde actie (bv. registreerBewijs, annuleerBewijs) ongeldig is o.b.v. de staat van het doelobject op dat moment.
Zo kan men bijvoorbeeld een Bewijs met een bepaalde unieke leveranciercode-bewijsreferteLeverancier maar 1x registreren.
Probeert men het Bewijs met dezelfde leveranciercode-bewijsreferteLeverancier combinatie nogmaals te registreren, dan zal dat fout gaan, en zal men als antwoord de bovenstaande foutcode krijgen.
De foutcode 30000 wordt gebruikt om aan te geven dat het gevraagde verzoek conflicteert met andere parallele verzoeken of LED verwerking. In dat geval wordt het beste, na x aantal (milli)seconden, opnieuw éénmalig geprobeerd.
De foutcode 90000 wordt gebruikt om aan te geven dat de LED Dienst (tijdelijk) niet beschikbaar is. Dit betekent niet dat er een onverwacht systeemprobleem was langs LED kant. Het betekent dat de LED Dienst bewust (tijdelijk) buiten gebruik werd gesteld, bijvoorbeeld voor onderhoudswerkzaamheden. Ingeval van dergelijke werkzaamheden wordt dit het beste op voorhand naar de betrokken partijen
gecommuniceerd.
LED geeft deze foutcode als de diensten manueel afgezet zijn.
De code 90300 wordt gebruikt om aan te geven dat zich tijdens de verwerking van het verzoek een onverwachtte systeemfout heeft voorgedaan. Bijvoorbeeld, indien tijdens de registratie van een Bewijs onverwacht de databaseconnectie uitvalt, of er zich een geheugenprobleem, of diskspaceprobleem voordoet.
Alle foutcodes veroorzaken een “rollback” in de LED Dienst en vereisen een rollback van de aanroepende partij. Voor alle foutcodes behalve de foutcodes 30000 en 90000 is een “retry” door de “consumer” zinloos.
Voorbeelden
Uitzondering op niveau 1.
<soap:Fault> <faultcode>Server</faultcode> <faultstring>10001 Fout formaat in de vraag (XSD validatie). Fout: error: cvc-datatype-valid.1.1: string value 'xxxxxxxxxxx' does not match pattern for INSZType in namespace http://generiek-01_02.vip.vlaanderen.be</faultstring> <detail> <ns1:VIPDienstException xmlns:ns1=" http://registreerbewijs.bewijsregistratiedienst.led.vlaanderen.be" /> </detail> </soap:Fault>
Uitzondering op niveau 2.
<Uitzonderingen> <Uitzondering> <Identificatie>99995</Identificatie> <Oorsprong>MAGDA</Oorsprong> <Type>FOUT</Type> <Tijdstip> <Datum>2011-03-10</Datum> <Tijd>09:32:39.570</Tijd> </Tijdstip> <Diagnose>Te veel gelijktijdige bevragingen</Diagnose> </Uitzondering> </Uitzonderingen>
Uitzondering op niveau 3.
<Uitzonderingen> <Uitzondering> <Identificatie>13202</Identificatie> <Oorsprong>MAGDA</Oorsprong> <Type>FOUT</Type> <Tijdstip> <Datum>2011-03-10</Datum> <Tijd>09:32:39.570</Tijd> </Tijdstip> <Diagnose>Gegevens niet opvraagbaar, geen persoonsdossier geregistreerd</Diagnose> </Uitzondering> </Uitzonderingen>
Op deze pagina
Binnen deze handleiding
- No labels