Page History
...
Projektet er opbygget som et Maven multi-module project, hvor nogle moduler kompilerer til jar-filer og andre til war-filer. De nævnes her i den rækkefølge de kompileres:
- ltr-btr-parent
ltr-btr-schemas
JAX-WS-artifakt generator genererer Java-klasser ud fra projektets WSDL-filer.ltr-btr-service
Selve servicens funktionalitet.- ltr-btr-service-wildfly
Wildfly-specifik funktionalitet. ltr-migration
Migreringskomponent.ltr-datagenerator
Datageneratorkomponent.
For at kunne fungere med DGWS og IDWS forudsættes at DGWS/IDWS Proxy Service også er installeret. Der henvises til guide for udviklere for proxy'en for nærmere beskrivelse af denne.
. Når projektet bygges, så pakkes en war-fil til servicen og en war-fil til baggrundsjobbet.
Ændringslog
Version | Dato | Ændring | Ansvarlig |
---|---|---|---|
1.0.2 | 2018-08-31 | Initialt dokument | Trifork |
Afvikling af unit-tests
For at afvikle unit-tests skal en MariaDB-database være tilgængelig.
I udviklingssammenhæng og ved unit-tests kan man nøjes med én databasebruger og én database. Disse kan oprettes vha. scripterne recreate_service_user.sql og recreate_database.sql som er lokaliseret under ltr-btr-service/src/test/resources/db. Derefter kan Flyway automatisk initialisere databasen.
Datasourcen i testafviklingen auto-konfigureres vha. Spring Boot som anvender database-credentials fra ltr-btr-service/src/test/resources/application.properties. De default værdier matcher værdierne i de førnævnte SQL-scripts.
1.0.14 | 2019-25-09 | Ajourført | Trifork |
1.1.3 | 2020-05-26 | Tilføjet byg vha. Docker | KvalitetsIT |
1.1.33 | 2023-11-08 | SDS-6387 omlægning af slettejob | KvalitetsIT |
Afvikling af unit-tests
Projektet bygges og Projektet skal være fuldt bygget for at lokale dependencies er på plads, og dernæst kan unit tests afvikles med følgende Maven kommando:
mvn clean testinstall
Der genereres desuden en testrapport.
...
Servicen benytter i udviklingssammenhæng Flyway, hvilket gør at databasen i udviklingsmiljøet automatisk opdateres til gældende version. Eneste forudsætning er at recreate_database.sql script samt recreate_service_user.sql script, som er placeret i ltr-btr-service/src/test/resources/db/, er blevet afviklet mod databasen.
På miljøer hvor der skal være mulighed for rollback, benyttes migrerings scripts fra ltr-btr-service/src/test/resources/db/migration.
XSD-vedligehold
XSDerne der eksporteres og benyttes i servicen ligger i modulet ltr-btr-schema. Der genereres JAXB-klasser som defineret i modulets pom.xml
...
Der er behov for adgange til følgende systemer:
NSP SVN-repository
Dependencies trækkes fra NSP's Nexus-repository: https://nexus.nspop.dk
Opsætning af udviklingsmiljø
Al kode findes i SVN: https://svn.nspop.dk/svn/trifork/ltr-btr/NSP SVN.
Efter at projektet er checket ud vil man typisk gøre følgende:
...
En Subversion-klient
Java 8
Maven
MariaDB
Gennemfør følgende steps for at bygge WAR filer:
Installér og start MariaDB
Klon projektet fra SVN
Opret database via script i ltr-btr-service/src/test/resources/db
For at bygge projektet, foretage unittests samt at bygge war-filer foretages kommandoen: mvn clean install
Opsætning af IntelliJ Idea
Man åbner blot pom.xml fra rodbiblioteket. Efter en mvn clean install bør dependencies være på plads.
...
Bygge WAR filer (Docker)
Et alternativ måde at bygge war filerne på, hvor kan man bl.a. bruger Docker-compose setup.
Følgende software er nødvendigt for at bygge projektet:
- En Subversion-klient
Java 8
Maven
- Docker
Gennemfør følgende steps for at bygge WAR filer:
- Klon projektet fra SVN
- Byg projektet
- mvn clean install
Deployment med Docker
Når man udvikler kan det være praktisk at deploye applikationen på en lokal Wildfly server, da det er denne applikationsserver som bruges i NSP produktionsmiljø. Der henvises til installationsvejledning for nærmere instrukser.lokalt. Dette kan gøres vha. Docker Compose-filen under compose/development/docker-compose.yml.
docker-compose up -d --build