Page History
| Anchor | ||||
|---|---|---|---|---|
|
| Table of Contents |
|---|
Stamdataservice på NSP
Guide til udviklere
Indholdsfortegnelse
1 Formål
1.1 Metode og rapportens opbygning
1.2 Målgruppe og læsevejledning
2 System design
2.1 Properties
3 Opsætning af udviklingsmiljø
3.1 Kildekode
3.1.1 DoDi
3.2 Byggemiljø
3.2.1 Dependencies
3.3 Database setup
3.3.1 DoDi
3.4 Test
3.5 IDE
3.5.1 Eclipse
3.6 IntelliJ Idea IDE
3.7 Distribution
4 Tips og tricks
4.1 JBoss out of memory
4.1.1 Beskrivelse
4.1.2 Løsning
5 Ændringslog
6 Referencer og kilder
| Anchor | ||||
|---|---|---|---|---|
|
...
Den primære målgruppe for dokumentet er systemudviklere.
| Anchor | ||||
|---|---|---|---|---|
|
| Anchor | ||||
|---|---|---|---|---|
|
| Wiki Markup |
|---|
Stamdata importerne består af en kerne komponent (sdm4-core), og en række importer specifikke komponenter – alle deployes på Dodi'en og har udelukkende til formål at populere data i en database (kan godt være forskellige databaser for hver komponent), se \[DESIGN\] for yderligere information vedrørende DoDi.
\\
*Komponenter på DoDi:*
DoDi applikationerne er en række selvstændigt kørende applikationer, til overvågning af indkomne data filer, der kan være i forskellige formater (XML, fastlængde, csv, m.v). Indkomne filer indlæses, valideres og gemmes herefter i DoDi'ens database.
\\
Hvert komponent indeholder en implementation af et Parser interface der fungerer som entry-point til applikationen. Det anbefales, at man som ny udvikler på projektet kigger koden igennem med denne fil som udgangspunkt. |
| Anchor | ||||
|---|---|---|---|---|
|
...
Opsætningen af udviklingsmiljøet for stamdataservicen forudsætter, at følgende elementer allerede er installeret på udviklerens maskine:
- Java Developer Kit 6.0_x
- Et passende udviklingsmiljø
- Maven 3.x
- Virtualbox version 4.1.18
- Vagrant version 1.0.3
- MySQL database 5.1.x
- JBoss AS7 (bliver sat op via Puppet scripts)
...
| Anchor | ||||
|---|---|---|---|---|
|
| Wiki Markup |
|---|
Stamdataprojektet anvender Maven som byggesystem \[MAVEN\]. Strukturen følger de generelle anbefalinger for Maven projekter, og er struktureret med en parent pom.xml og en projekt pom.xml fil for hvert underprojekt.
Subprojekterne er opbygget efter Maven layout konventionen.
\\
For at bygge en importer, skal man gøre følgende:
Check Core-modul ud og kør mvn install
Check Maven-plugin ud og kør mvn install
CheckTest-utils ud og kør mvn install
Check parent-modul ud og kør mvn install
\\
Herefter er du klar til at bygge et importer-modul.
Importmodulets integrationstest er afhængig af at ligge som et subdirectory til parent-modulet, så du skal checke det ud som sådan et.
Hvis du ønsker at checke alle importermoduler ud, ligger der i roden af parent-modulet et script, checkout-importermodules.sh, som udfører checkout af alle importermoduler samt maven-plugin og test-utils.
\\ |
| Anchor | ||||
|---|---|---|---|---|
|
...
DoDi-projekterne anvender Vagrant+Puppet til at opsætte udviklingsmiljøet.
For at få bootet og opsat en udviklingsmaskine, køres følgende
% vagrant up
Fra roden af et importermodul eller fra parent-modulet.
Når vagrant har bygget den virtuelle maskine, er den sat op med den korrekte version af JBoss 7 samt en MySQL der er konfigureret til at have en root-bruger med password papkasse og en sdm4-bruger med password sdm4.
Der er også automatisk oprettet en tom database med standard-navnet for databasen, (sdm_warehouse) og en datasource i JBoss med det JNDI-navn, som applikationen som default forventer at kunne slå datasource op.
Applikationen kører ved opstart automatisk databaseskema på databasen.
Der er forwardet følgende porte ind i den virtuelle maskine, så man kan tilgå jboss og mysql fra sin lokale maskine
8080 -> 8080 (dvs. at man kan tilgå http://localhost:8080/)
3307 -> 3306 (dvs. at man kan have en urelateret mysql kørende lokalt og tilgå SDM-mysql'en på den virtuelle maskine på url localhost:3307)
| Anchor | ||||
|---|---|---|---|---|
|
...
I de følgende beskrives problemer og deres løsninger:
| Anchor | ||||
|---|---|---|---|---|
|
...
Nyeste udgave af dette dokument kan erhverves ved henvendelse til NSP-operatøren.
Version | Dato | Ændring | Ansvarlig |
1.0 | 28/4-2011 | Initielt Dokument | Trifork |
1.1 | 6/10-2011 | Opdateret med CPR tjenester | Trifork |
1.2 | 8/12-2011 | Kvalitetssikret af Lakeside | Lakeside |
1.3 | 22/12-2011 | Opdateret bla. med performance test af autorisationsservicen og kopi-register-servicen | Trifork |
1.4 | 20/8-2012 | Tilføjet DoDi-specifikke afsnit der beskriver SDM4 | Trifork |
1.5 | 24/8 2012 | Fjernet al dokumentation der ikke var SDM4 importer specifik | Trifork |
1.6 | 9/1-2014 | Opdateret source links | Trifork KPN |
| Anchor | ||||
|---|---|---|---|---|
|
| Anchor | ||||
|---|---|---|---|---|
|
| Anchor | ||||
|---|---|---|---|---|
|
Reference-id | Indhold / Overskrift | Henvisning | |||
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="5702e6d1-7b08-4b7d-bfe1-90ef4de78b5d"><ac:plain-text-body><![CDATA[ | [MAVEN] | Welcome to Apache Maven | [http://maven.apache.org/ | http://maven.apache.org/] | ]]></ac:plain-text-body></ac:structured-macro> |
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="dfc2d094-8ed7-4b79-a0e8-63c2f8d91435"><ac:plain-text-body><![CDATA[ | [NIAB] | NSP in a box | Kan rekvireres ved henvendelse til operatøren inklusiv vejledning i anvendelse og konfiguration. | ]]></ac:plain-text-body></ac:structured-macro> | |
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="55fa1e86-7c63-4027-a7d5-1bd0baf05730"><ac:plain-text-body><![CDATA[ | [BRS-guide til anvendere] | Guide til anvendere | Ligger i doc bibliotek i en BRS release | ]]></ac:plain-text-body></ac:structured-macro> | |
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="6170013d-58db-4cfe-a9e0-ca4ce6390ffa"><ac:plain-text-body><![CDATA[ | [BRS-driftvejledning] | Driftvejledning | Ligger i doc bibliotek i en BRS release | ]]></ac:plain-text-body></ac:structured-macro> |