Dette dokument har til formål at gøre det muligt for andre end den oprindelige leverandør at overtage videreudvikling af DGWS/IDWS Proxy.
Dokumentationen er være rettet mod udviklere og IT-arkitekter, som ikke på forhånd har kendskab til komponenten, og som ikke har adgang til komponentens oprindelige udviklere.
Det forudsættes at læseren har læst dokumentet Design og Arkitektur.
Version | Dato | Ændring | Ansvarlig |
1.0 | 2017-12-11 | Initielt dokument | Trifork |
1.1 | 2018-05-12 | Tilrettet i henhold til ændringer i version 1.7.5 | Trifork |
DGWS / IDWS Proxy komponenten er en applikation, der kan fungere som proxy for andre applikationer, der udstiller services på DGWS og/eller IDWS form.
Den samme applikation kan således stå for verifikation af ID-kort og IDWS-tokens for flere forskellige ”service provider applikationer”. Dette sikrer at disse tokens valideres korrekt og ensartet for en række forskellige applikationer.
Samtidig kan komponenten stå for en række andre opgaver, som er ensartet for disse typer applikationer og derfor med fordel kan placeres i en fælles proxy:
Proxyen kompileres til en enkelt WAR-fil/komponent WSProxy.war. Herudover indeholder kodebasen også en testservice, som kompileres til en særskilt war. Denne anvendes hovedsageligt til integrationstests.
Proxyen giver kun mening i forbindelse med en ”service provider applikation”, som requests kan forwardes til, og vil således altid skulle installeres på samme server som en anden service.
Til drift benyttes Wildfly 8.2, men servicen kan også afvikles under f.eks. Apache Tomcat.
Den aktuelle version af proxyen har ingen database. Dette vil dog skulle tilføjes for at understøtte retransmission.
Der kan som udgangspunkt logges til følgende logfiler:
hvor name er navnet på war-filen.
Se eksempel på konfiguration af logning i installationsvejledningen for FSK, som anvender DGWS/IDWS proxyen.
Al kode findes i NSP's Subversion: https://svn.nspop.dk/svn/trifork/dgws_idws_proxy/
Efter at projektet er checket ud vil man typisk gøre følgende:
Koden er opdelt i følgende submoduler:
Følgende software er nødvendigt for at bygge projektet
Gennemfør følgende steps for at bygge WAR filer.
Man åbner pom.xml fra rodbiblioteket. Efter en mvn clean install bør dependencies være på plads.
Der anvendes Lombok-annotationer i projektet (f.eks. @Data og @Log4j2), så IntelliJ Lombok plugin skal installeres for at de automatisk genererede get-, set- og log-metoder opfattes rigtigt af IntelliJ.
Hvis man ikke har installeret Wildfly, kan proxy og testservicen deployes til Tomcat i IntelliJ. Opret en Tomcat runtime konfiguration (Tomcat 7 kan anvendes), og specificer deployment af hhv. testservice.war og wsproxy.war.
Når man udvikler kan det være praktisk at deploye til en lokal Wildfly server, da det er denne applikationsserver som bruges i NSP produktionsmiljøet. Der henvises til Installationsvejledningen for nærmere instrukser.