Nærværende dokument udgør udviklervejledningen for FIBS (Fødselsindberetnings-servicen). FIBS fungerer som webservice gateway som modtager indberetninger som følger DenGodeWebservice (DGWS) til Kirkeministeriets jordemoder-service og transformerer dem til webservice protokollen OWSA Model T som jordemoder-service benytter.
Komponenten er udviklet som en Java webapplikation baseret på Spring frameworket og understøttes på JBoss Application Server version 8 (Wildfly). Komponenten bruger Axis2 til at foretage webservice kald til jordemoder-servicen, signering af beskeder håndteres gennem Axis2 modulet Rampart.
Denne udviklervejledning er gældende for FIBS version 1.1.X.
FIBS benytter sig af en række open source projekter. Til at styre afhængighederne og bygge projektet benyttes maven byggeværktøjet.
FIBS projektet ligger i nspop subversion repository og kan nås på følgende adresse:
https://svn.nspop.dk/svn/components/fibs/
Komponenten bygges med nedenstående kommando. For at bygget kan afvikle tests kræves der en mysql/mariadb database kørende. Denne kan startes med kommandoen "docker-compose up sdmdb" i folderen "compose/development".
mvn package |
Unit- og integrations-tests er placeret under src/test og anvender samme pakkestruktur som de klasser de tester. Testene er udformet som Junit 4 annoterede test-cases.
Bemærk at de afviklede tests forudsætter at der er online adgang til TEST2 i NSIs fælles testmiljøer og til DanIDs PP miljø (til hentning af krydscertifikat). Dvs. byggemiljøets eksterne IP skal være whitelistet hos DanID.
Integrationstest køres ved at kommenter "@Test" ind i dk.rsd.fibs.newborns.NewbornsIntegrationTest.testWildfly.
Hvis testen gievr en fejl retur er der to kendte fejl scenarier.
Password er udløbet
Hvis password er udløbet kan testen testPostLogin() aktiveres og afvikles. Den sørger for at der skiftes password og testen giver en fejl og det nye password printes. Det nye password kan så opdateres.
Testdata er nulstillet
Hvis test data hos CPR er blevet nulstillet kan man rette KMtest8.xml. Man starter med at rette PersonBirthSequence til 1 og så tælles den op med en indtil tseten er OK.
FIBS releases med følgende kommando
mvn release:prepare -Darguments="-Dfibs.host=<host> -Dfibs.port=<port>" |
Hvor <host> og <port> f.eks. er 'localhost' og '8080', hvis integrationstests skal køres mod et lokalt kørende docker-compose setup.