Wildfly Application Server bygger på Undertow Servlet Container, hvilket gør det muligt gennem dennes Servlet Extension mekanisme at udvide containeren med kode der håndtere NSP specifikke detaljer.
Undertow består af et større antal HttpHandlers der hver har sin egen afgrænsede del af ansvaret for at få udført et Http Servlet Request og produceret et Http Servlet Response. Handlers i Undertow opbygges i en kalds-kæde så hver handler både kan håndtere Request og Response.
Følgende er et eksempel på hvilke Undertow og Wildfly handlers der er involveret i et simpelt SOAP kald indtil kontrollen ender i en Java Http Servlet:
javax.servlet.http.HttpServlet io.undertow.servlet.handlers.ServletHandler io.undertow.servlet.handlers.FilterHandler io.undertow.servlet.handlers.security.ServletSecurityRoleHandler io.undertow.servlet.handlers.ServletDispatchingHandler org.wildfly.extension.undertow.security.SecurityContextAssociationHandler io.undertow.server.handlers.PredicateHandler dk.sds.nsp.accesshandler.NspServletHandler io.undertow.server.handlers.PathHandler io.undertow.servlet.handlers.security.SSLInformationAssociationHandler io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler io.undertow.server.handlers.PredicateHandler io.undertow.security.handlers.AbstractConfidentialityHandler io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler io.undertow.security.handlers.AuthenticationMechanismsHandler io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler io.undertow.security.handlers.SecurityInitialHandler io.undertow.server.handlers.PredicateHandler org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler io.undertow.server.handlers.PredicateHandler io.undertow.servlet.handlers.ServletInitialHandler |
Stakken læses nedefra og op i forhold til håndtering af Request og derefter oppefra og ned ifm håndtering af Response. Stakken viser også hvor NSP Access Handler er placeret i denne.
NSP Access Handler (AH) implementerer Undertows HttpHandler interface og tilføjes i stakken via den omtalte Servlet Extension mekanisme, således at den køres efter Servlet Containeren har håndteret eventuelle sikkerhedsaspekter men inden andre Servlet relaterede handlers køres. Placeringen sikrer også at Undertow har allokeret en dedikeret Task Thread til at håndtere kaldet frem for en asynkron XNIO Thread der bruges længere nede i stakken.
Placeringen af AH i stakken kan sumeres på et lidt højere abstraktionsplan i følgende digram:
![]()
NSP Access Handler løser følgende opgaver på NSP platformen:
Access Log
Audit Log
Certificate Revocation Check
Message Transmission Optimization Mechanism
Den Gode Webservice (DGWS) billet validering
OIO Identitetsbaserede Webservices (OIO-IDWS) billet validering
Den Gode Webservice response enhancement
OIO Identitetsbaserede Webservices response signering
Nedenstående graf viser hvorledes AH er opdelt i et antal handlers der hver bidrager til en eller flere af de omtalte opgaver
![]()
Hver enkelt element