Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Navitabs
rootDin digitale tandlægevælger (DDTV) - Leverancebeskrivelse
includeroottrue


Table of Contents

Introduktion

Formål

Dette dokument beskriver hvordan man kommer i gang med at tilpasse eller videreudvikle DDTV.

Læsevejledning

Læser forventes at have kendskab til Java softwareudvikling med anvendelse af Maven og WildFly. Derudover forventes kendskab til docker-compose.

Opsætning af udviklingsmiljø

Projektet ligger som nspop git-repository på følgende adresse: https://git.nspop.dk/scm/com/din-digitale-tandlaegevaelger.git

Det er udviklet i Java 21 og bygges med maven.

Code Block
mvn package

Afvikling

Maven bygger war-filerne, som kan deployes med docker compose. Dette gøres lokalt med kommandoen:

...

Herefter vil de tre DDTV services være tilgængelig på hhv. http://localhost:8080/ddtv-citizen-service/2025/05/01/, http://localhost:80808081/ddtv-dentist-service/2025/05/01/ og http://localhost:80808082/ddtv-batch-service/2025/05/01/.

Det er muligt at sætte en remote debugger op på port hhv. 5005, 5006 eller 5007 (operations).

Projektstruktur

For nærmeste beskrivelse af projektets struktur og opbygning, se Din digitale tandlægevælger (DDTV ) - Design- og Arkitekturbeskrivelse.

Database

Databasemodellen styres ved hjælp af liquibase. Det betyder, at når der skal laves ændringer til databasen, så må man ikke rette i de eksisterende skemafiler. I stedet skal der laves nye filer, der beskriver ændringerne.

Skemaændringer

Skal der tilføjes fx en ny kolonne eller en ny tabel, skal nedenstående gøres:

  1. Der oprettes SQL fil(er) i folderen compose/configuration/database/ddl til at foretage ændringerne.
  2. Der oprettes en ny fil i folderen compose/configuration/database/ddl. Filen skal navngives liquibase-changelog-x.y.z.xml hvor x, y og z er det versionsnummer du forventer at release komponenten som. Herfra refereres til de nyoprettede SQL filer.
  3. Filen fra punkt 1 tilføjes compose/configuration/database/liquibase-changelog-master.xml.

Testdata

Opstår der en situation, hvor der skal tilføjes yderlige testdata for at integrationstesten kan afvikles, skal nedenstående udføres.

...