Indledning

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.

Afhængigheder

FIBS benytter sig af en række open source projekter. Til at styre afhængighederne og bygge projektet benyttes maven byggeværktøjet.

Projektstruktur

FIBS projektet ligger i nspop subversion repository og kan nås på følgende adresse:
https://svn.nspop.dk/svn/components/fibs/

Byggevejledning

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

Tests

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.

Integrationtest

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.

Release

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.