У меня есть автономное приложение со встроенными Jetty и Wicket.
Я бы хотел использовать CDI для инъекций.Jetty: добавлено <resource-env-ref> программно
Итак, я нашел http://docs.jboss.org/weld/reference/latest/en-US/html/environments.html#d0e5286
и теперь я пытаюсь добавить это программно, но это довольно сложно.
Как это сделать?
Другие источники, которые я нашел являются:
- http://osdir.com/ml/java.jetty.support/2007-02/msg00198.html
- http://docs.codehaus.org/display/JETTY/JNDI
До сих пор у меня есть:
Server server = new Server(8080);
Context ctx = new Context(server, "/", Context.NO_SECURITY | Context.SESSIONS);
try {
//BeanManager
new org.mortbay.jetty.plus.naming.Resource(ctx, "BeanManager",
new javax.naming.Reference(
"javax.enterprise.inject.spi.BeanManager",
"org.jboss.weld.resources.ManagerObjectFactory", null)
);
} catch (NamingException ex) {
log.error(...);
}
// Wicket.
final ServletHolder wicketSH = new ServletHolder(new MyReloadingWicketServlet());
wicketSH.setInitParameter("applicationClassName", WicketApplication.class.getName());
ctx.addServlet(wicketSH, "/*");
Возможно, я нашел - [сварная калитка] (http://docs.jboss.org/weld/reference/1.0.0/en-US/html/viewlayers.html#d0e5200) –
О нет. Weld-wicket теперь представляет собой шов-калитка, чьи документы относятся к сварной кассете, которая описывает только конфигурацию XML :( –