Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Navitabs
rootSeal.Java 3 - Leverancebeskrivelse
includeroottrue


I det følgende beskrives hvad en service provider skal gøre følgende når der modtages et DGWS request. 

...

Code Block
// Opret instans af den ønskede Federation
SOSITestFederation sosiTestFederation = new SOSITestFederation(new Properties());

// Opret ny instans af factory der kan håndtere DGWS:
SOSIFactory sosiFactory = new SOSIFactory(sosiTestFederation, new EmptyCredentialVault(), new Properties());

Bemærk: Den andet argument til SOSIFactory er en tom CredentialVault. Hvis den sættes til en tom CredentialVault, så anvendes CredentialVault fra STS.

Hvis man modtager det indkomne request som en Stream, så kan man benytte Seal til hente ID kortet ud fra requestet og det kan man så arbejde videre med og benytte informationerne i servicen:

Code Block
// Først skal den indkomne inputStream parses til XML:
String xml = ParseStreamToXml(inputStream);

// Deserialisering til RequestHeader. Her valideres signaturen også (i RequestModelBuilder)
RequestHeader requestHeader = sosiFactory.deserializeRequestHeaderOnly(xml);

// Nu har man et ID kort man kan arbejde videre med informationerne f.eks.organisations navn
IDCard idCard = requestHeader.getIDCard();
String orgName = ((SystemIDCard) idCard).getSystemInfo().getCareProvider().getOrgName();