Improving kiosk mode of vaadin application

We are using a vaadin application on a touchscreen device in kiosk mode. The application is a reservation application. We use the openkiosk browser (http://openkiosk.mozdevgroup.com/) which is a fork of the mozilla webbrowser.

We have disabled all buttons and activated that the browser makes an automatic refresh every 10 minutes. We use this to ensure that in case of communication problems the application recovers after a certain time.

Currentley I want to improve the vaadin application that in future we can possibly change this refresh rate to a higher level, or in best case we can disable it.

My main concerns are currentley to improve the application in case of a session expiration. I have extended the vaadin servlet to change the default behaviour in case of session timeout. No message will we displayed instead the application is reloaded.

[code]
@WebServlet(asyncSupported = true)
public class TouchendServlet extends VaadinServlet implements SessionInitListener, SessionDestroyListener {

/**
 *
 */
private static final long serialVersionUID = 5982714021249909001L;
private static Log log = LogFactory.getLog(TouchendServlet.class);

@Override
protected void servletInitialized() throws ServletException {
    super.servletInitialized();
    
    getService().addSessionInitListener(this);
    getService().addSessionDestroyListener(this);
    
    getService().setSystemMessagesProvider(new SystemMessagesProvider() {

        /**
         *
         */
        private static final long serialVersionUID = 6036609990158099975L;

        @Override
        public SystemMessages getSystemMessages(SystemMessagesInfo systemMessagesInfo) {
            
            CustomizedSystemMessages messages = new CustomizedSystemMessages();
            messages.setSessionExpiredMessage("Reloading application...");
            messages.setSessionExpiredNotificationEnabled(false);
            
            return messages;
        }});
}

@Override
public void sessionDestroy(SessionDestroyEvent event) {
    log.debug("Session destroyed...");
    // Do session end stuff here
}

@Override
public void sessionInit(SessionInitEvent event) throws ServiceException {
    log.debug("Session initialized...");
    // Do session start stuff here
}

}
[/code]I also changed some settings in the web.xml file:

[code]

TouchendUI at.nettania.dev.ntacadmin.TouchendServlet
<init-param>
       <param-name>UI</param-name>
      <param-value>at.nettania.dev.ntacadmin.ui.touchend.TouchendUI</param-value>
</init-param>

<init-param>
    <param-name>close-idle-roots</param-name>
    <param-value>true</param-value>
</init-param>

<load-on-startup>1</load-on-startup>
<async-supported>true</async-supported>
TouchendUI /touchend/* [/code]Are there other things I can change to improve the application according to a use in kiosk mode?

My main worries are, that I oversee something and suddenly the user sees a blank page, or the application hangs during using it. Are there any expiriences for a vaadin application used in a kiosk mode?

Thanks,
Florian