[7.1.15] Vaadin & Guice integration

Hi all

I try to integrate vaadin with guice but i have nullPointerException. Can you take a few minutes to check my code? :slight_smile:

[code]
public class CdiUiProvider extends DefaultUIProvider implements Serializable {

private static final long serialVersionUID = 8043964411848504777L;

@Inject
private MyUI vaadinUI;

@Override
public Class<? extends UI> getUIClass(UIClassSelectionEvent event) {
    return CoproprieteUI.class;
}

@Override
public UI createInstance(UICreateEvent event) {
    return vaadinUI;
}

}
[/code][code]
public class CdiVaadinServlet extends VaadinServlet {

@Inject
private Provider<CdiUiProvider> applicationProvider;

@SuppressWarnings("serial")
private final SessionInitListener sessionInitListener = new SessionInitListener() {

    @Override
    public void sessionInit(SessionInitEvent event) throws ServiceException {

        final VaadinSession session = event.getSession();
        session.addUIProvider(applicationProvider.get());

    }
};

@Override
public void init(ServletConfig servletConfig) throws ServletException {
    super.init(servletConfig);
    getService().addSessionInitListener(sessionInitListener);
}

}
[/code][code]

<?xml version="1.0" encoding="UTF-8"?>


Web Application

productionMode
${productionMode}


heartbeatInterval
120


closeIdleSessions
true


MyServlet
com.test.cdi.CdiVaadinServlet

Vaadin UI to display
UI
com.test.ui.ui.vaadin.MyUI


widgetset
com.test.widget.OptimizeWidgetSet



MyServlet
/*

@Theme(“dashboard”)
@Title(“Gestion de copropriété”)
@PreserveOnRefresh
@SessionScoped
public class MyUI extends UI implements ICoproprieteUI {

private static final long serialVersionUID = 1L;

@Inject
private Log logger;

@Override
protected void init(VaadinRequest request) {

    logger.error(">>>>>>>>>>>>>>>>>>>>>>>>> SUCESS");

    setLocale(Locale.FRANCE);
    new MyUIPresenter(this);
}

…
[/code] com.vaadin.event.ListenerMethod$MethodException: Invocation of method sessionInit in com.test.cdi.CdiVaadinServlet$1 failed. at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:528) at com.vaadin.event.EventRouter.fireEvent(EventRouter.java:193) at com.vaadin.server.VaadinService.onVaadinSessionStarted(VaadinService.java:791) at com.vaadin.server.VaadinService.createAndRegisterSession(VaadinService.java:748) at com.vaadin.server.VaadinService.doFindOrCreateVaadinSession(VaadinService.java:701) at com.vaadin.server.VaadinService.findOrCreateVaadinSession(VaadinService.java:642) at com.vaadin.server.VaadinService.findVaadinSession(VaadinService.java:501) at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1384) at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:238) at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:662) Regards

Hi,

Can I have to use https://vaadin.com/wiki/-/wiki/Main/Vaadin-CDI-integration ?

Thanks