Page History
...
| Code Block | ||||||
|---|---|---|---|---|---|---|
| ||||||
import static dk.nsp.test.idp.EmployeeIdentities.jordemoderAdaLovelace;
private static final URI NTS_ENDPOINT = URI.create("http://test1-cnsp.ekstern-test.nspop.dk:8080/nts/service");
private static final String NTS_ACTION = "http://sundhedsdatastyrelsen.dk/soap/2022/10/21/actions#SomeSoapAction";
private static final String NTS_REQUEST_BODY = "<Request/>";
public void employeeExample() throws Exception {
try (NspSoapClient client = new NspSoapClient(System.out::println)) {
try (NspSoapResponse response = client.request(NTS_ENDPOINT, NTS_ACTION).as(jordemoderAdaLovelace()).execute(NTS_REQUEST_BODY)) {
assertNotNull(response);
assertFalse(response.isFault());
String xml = IOUtils.toString(response.getResponse(), "utf-8");
assertTrue(xml.contains("OK"));
}
}
} |
Ovenstående eksempel viser hvordan man kan anvende NSP Test Identity Provider til at kalde en service på NSP. I det følgende gennemgåes hver linie af eksemplet:
| Linie | Forklaring |
|---|---|
| 1 | Import den medarbejder identitet der anvendes |
| 3 | Definer den NSP service der skal kaldes. |
| 35 | Definer hvilken specifik operation der skal udføres |
| 57 | Definer den SOAP Body der skal sendes. |
| 810 | Opret en ny NspSoapClient der logger requests og response til standard out. |
| 911 | Udfører et request mod NTS servicen som den indbyggede identitet Ada Lovelace der er en autoriseret jordemoder. |
| 1012-1315 | Tjekker om servicen svarede forventet. |
...
NSP Test Identity Provider indeholder et større antal identiteter der alle er oprettet i DTG. Disse 16 personer kan anvendes både som private borgere og som medarbejdere med autorisationer og/eller Nationale Roller. Det er også muligt at definere sine egne identiteter hvis man har et helt særligt behov. Det anbefales dog at anvende de identiteter der er med i biblioteket så vidt det er muligt.
For at definere f.eks. en ny medarbejder identitet skal man enten implementere interfacet EmployeeIdentity eller EmployeeIdentityBuilder.
Eksempel
Kildekoden til NSP Test Identity Provider biblioteket findes i NSP's Git Repository hvor man kan finde klassen NspSoapClientExample der indeholder eksempler på brug af biblioteket.
...