Page History
...
| Code Block | ||||
|---|---|---|---|---|
| ||||
@WebServlet("/*")
public class NotificationBrokerServlet extends HttpServlet {
...
@Override
public void init() throws ServletException {
Object o = getServletContext().getAttribute(NotificationBrokerServletContextListener.ANNOTATION_CONFIG_CONTEXT);
if(o != null && o instanceof AnnotationConfigApplicationContext) {
((AnnotationConfigApplicationContext)o).getAutowireCapableBeanFactory().autowireBean(this);
}
}
|
Bruger man derimod en JAX-WS genereret servlet kan denne autowiring ske ved brug af @PostConstruct annotationen, demonstreret ved eksemplet her fra FGVHR:
| Code Block | ||||
|---|---|---|---|---|
| ||||
public abstract class AbstractFgvhrWS {
@Resource
protected WebServiceContext context;
@PostConstruct
public void init() {
ServletContext servletContext = (ServletContext) context.getMessageContext().get(MessageContext.SERVLET_CONTEXT);
Object o = servletContext.getAttribute(ANNOTATION_CONFIG_CONTEXT);
((AnnotationConfigApplicationContext)o).getAutowireCapableBeanFactory().autowireBean(this);
}
|
I eksemplet her extender klasserne der implementerer de genererede JAX-WS klasser den abstrakte klasse.
Afsluttende
Samlet set udgør dokumentet her med eksempler en vejledning til hvordan DI i NSP's java-komponenter skal håndteres med brug af konfigurationsklasser, beans, autowiring og AnnotationConfigApplicationContext / AnnotationConfigWebApplicationContext.