How to create Servlet?

Marco Collovati:
Hi,

I know this is not answering your question about servlet registration, but an easier way to install session listener is to implement a VaadinServiceInitListener. By default it should be registered through a META-INF/services/com.vaadin.flow.server.VaadinServiceInitListener file, but since you are using running spring you just need to expose your implementation as a bean

    @Component
    private static final class MySessionListener implements SessionInitListener, SessionDestroyListener {

        @Override
        public void sessionDestroy(SessionDestroyEvent sessionDestroyEvent) {
            // destroy stuff...
        }

        @Override
        public void sessionInit(SessionInitEvent sessionInitEvent) throws ServiceException {
            // destroy stuff...
        }

    }

    @Component
    private static class MyVaadinServiceInitListener implements VaadinServiceInitListener {

        private final MySessionListener sessionListener;

        private MyVaadinServiceInitListener(MySessionListener sessionListener) {
            this.sessionListener = sessionListener;
        }

        @Override
        public void serviceInit(ServiceInitEvent event) {
            event.getSource().addSessionInitListener(sessionListener);
            event.getSource().addSessionDestroyListener(sessionListener);
        }
    }

HTH

Marco

It works as what i needed! I only need to regist these listeners and nothing else, this must be best way to approach!
Thank you Marco!