Example usage for com.vaadin.server CustomizedSystemMessages setInternalErrorURL

List of usage examples for com.vaadin.server CustomizedSystemMessages setInternalErrorURL

Introduction

In this page you can find the example usage for com.vaadin.server CustomizedSystemMessages setInternalErrorURL.

Prototype

public void setInternalErrorURL(String internalErrorURL) 

Source Link

Document

Sets the URL to go to when an internal error occurs.

Usage

From source file:com.haulmont.cuba.web.sys.CubaVaadinServletService.java

License:Apache License

public CubaVaadinServletService(VaadinServlet servlet, DeploymentConfiguration deploymentConfiguration)
        throws ServiceException {
    super(servlet, deploymentConfiguration);

    Configuration configuration = AppBeans.get(Configuration.NAME);
    webConfig = configuration.getConfig(WebConfig.class);
    webAuthConfig = configuration.getConfig(WebAuthConfig.class);
    testMode = configuration.getConfig(GlobalConfig.class).getTestMode();

    ServletContext sc = servlet.getServletContext();
    String resourcesTimestamp = sc.getInitParameter("webResourcesTs");
    if (StringUtils.isNotEmpty(resourcesTimestamp)) {
        this.webResourceTimestamp = resourcesTimestamp;
    } else {//from  w  ww  .ja va  2  s .c  om
        this.webResourceTimestamp = "DEBUG";
    }

    addSessionInitListener(event -> {
        WrappedSession wrappedSession = event.getSession().getSession();
        wrappedSession.setMaxInactiveInterval(webConfig.getHttpSessionExpirationTimeoutSec());

        HttpSession httpSession = wrappedSession instanceof WrappedHttpSession
                ? ((WrappedHttpSession) wrappedSession).getHttpSession()
                : null;

        log.debug("HttpSession {} initialized, timeout={}sec", httpSession,
                wrappedSession.getMaxInactiveInterval());
    });

    addSessionDestroyListener(event -> {
        WrappedSession wrappedSession = event.getSession().getSession();
        HttpSession httpSession = wrappedSession instanceof WrappedHttpSession
                ? ((WrappedHttpSession) wrappedSession).getHttpSession()
                : null;

        log.debug("HttpSession destroyed: {}", httpSession);
        App app = event.getSession().getAttribute(App.class);
        if (app != null) {
            app.cleanupBackgroundTasks();
        }
    });

    setSystemMessagesProvider(systemMessagesInfo -> {
        Locale locale = systemMessagesInfo.getLocale();

        CustomizedSystemMessages msgs = new CustomizedSystemMessages();

        if (AppContext.isStarted()) {
            try {
                Messages messages = AppBeans.get(Messages.NAME);

                msgs.setInternalErrorCaption(messages.getMainMessage("internalErrorCaption", locale));
                msgs.setInternalErrorMessage(messages.getMainMessage("internalErrorMessage", locale));

                msgs.setCommunicationErrorCaption(messages.getMainMessage("communicationErrorCaption", locale));
                msgs.setCommunicationErrorMessage(messages.getMainMessage("communicationErrorMessage", locale));

                msgs.setSessionExpiredCaption(messages.getMainMessage("sessionExpiredErrorCaption", locale));
                msgs.setSessionExpiredMessage(messages.getMainMessage("sessionExpiredErrorMessage", locale));
            } catch (Exception e) {
                log.error("Unable to set system messages", e);
                throw new RuntimeException("Unable to set system messages. "
                        + "It usually happens when the middleware web application is not responding due to "
                        + "errors on start. See logs for details.", e);
            }
        }

        String redirectUri;
        if (RequestContext.get() != null) {
            HttpServletRequest request = RequestContext.get().getRequest();
            redirectUri = StringUtils.replace(request.getRequestURI(), "/UIDL", "");
        } else {
            String webContext = AppContext.getProperty("cuba.webContextName");
            redirectUri = "/" + webContext;
        }

        msgs.setInternalErrorURL(redirectUri + "?restartApp");

        return msgs;
    });
}

From source file:com.klwork.explorer.web.DefaultSpringSystemMessagesProvider.java

License:Apache License

@Override
public SystemMessages getSystemMessages(Locale locale) {
    CustomizedSystemMessages systemMessages = new CustomizedSystemMessages();
    String message;//from  w ww .j a  va 2  s .  c o  m

    message = messageSource.getMessage("vaadin.sessionExpired.Caption", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setSessionExpiredCaption(message);
    }
    message = messageSource.getMessage("vaadin.sessionExpired.Message", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setSessionExpiredMessage(message);
    }
    message = messageSource.getMessage("vaadin.sessionExpired.URL", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setSessionExpiredURL(message);
    }
    message = messageSource.getMessage("vaadin.sessionExpired.NotificationEnabled", null, MESSAGE_NOT_FOUND,
            locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        boolean notificationEnabled = (message.equalsIgnoreCase("true") || message.equalsIgnoreCase("1"));
        systemMessages.setSessionExpiredNotificationEnabled(notificationEnabled);
    }

    message = messageSource.getMessage("vaadin.communicationError.Caption", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setCommunicationErrorCaption(message);
    }
    message = messageSource.getMessage("vaadin.communicationError.Message", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setCommunicationErrorMessage(message);
    }
    message = messageSource.getMessage("vaadin.communicationError.URL", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setCommunicationErrorURL(message);
    }
    message = messageSource.getMessage("vaadin.communicationError.NotificationEnabled", null, MESSAGE_NOT_FOUND,
            locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        boolean notificationEnabled = (message.equalsIgnoreCase("true") || message.equalsIgnoreCase("1"));
        systemMessages.setCommunicationErrorNotificationEnabled(notificationEnabled);
    }

    message = messageSource.getMessage("vaadin.authenticationError.Caption", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setAuthenticationErrorCaption(message);
    }
    message = messageSource.getMessage("vaadin.authenticationError.Message", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setAuthenticationErrorMessage(message);
    }
    message = messageSource.getMessage("vaadin.authenticationError.URL", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setAuthenticationErrorURL(message);
    }
    message = messageSource.getMessage("vaadin.authenticationError.NotificationEnabled", null,
            MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        boolean notificationEnabled = (message.equalsIgnoreCase("true") || message.equalsIgnoreCase("1"));
        systemMessages.setAuthenticationErrorNotificationEnabled(notificationEnabled);
    }

    message = messageSource.getMessage("vaadin.internalError.Caption", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setInternalErrorCaption(message);
    }
    message = messageSource.getMessage("vaadin.internalError.Message", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setInternalErrorMessage(message);
    }
    message = messageSource.getMessage("vaadin.internalError.URL", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setInternalErrorURL(message);
    }
    message = messageSource.getMessage("vaadin.internalError.NotificationEnabled", null, MESSAGE_NOT_FOUND,
            locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        boolean notificationEnabled = (message.equalsIgnoreCase("true") || message.equalsIgnoreCase("1"));
        systemMessages.setInternalErrorNotificationEnabled(notificationEnabled);
    }

    message = messageSource.getMessage("vaadin.outOfSync.Caption", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setOutOfSyncCaption(message);
    }
    message = messageSource.getMessage("vaadin.outOfSync.Message", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setOutOfSyncMessage(message);
    }
    message = messageSource.getMessage("vaadin.outOfSync.URL", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setOutOfSyncURL(message);
    }
    message = messageSource.getMessage("vaadin.outOfSync.NotificationEnabled", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        boolean notificationEnabled = (message.equalsIgnoreCase("true") || message.equalsIgnoreCase("1"));
        systemMessages.setOutOfSyncNotificationEnabled(notificationEnabled);
    }

    message = messageSource.getMessage("vaadin.cookiesDisabled.Caption", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setCookiesDisabledCaption(message);
    }
    message = messageSource.getMessage("vaadin.cookiesDisabled.Message", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setCookiesDisabledMessage(message);
    }
    message = messageSource.getMessage("vaadin.cookiesDisabled.URL", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setCookiesDisabledURL(message);
    }
    message = messageSource.getMessage("vaadin.cookiesDisabled.NotificationEnabled", null, MESSAGE_NOT_FOUND,
            locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        boolean notificationEnabled = (message.equalsIgnoreCase("true") || message.equalsIgnoreCase("1"));
        systemMessages.setCookiesDisabledNotificationEnabled(notificationEnabled);
    }

    return systemMessages;
}

From source file:de.catma.servlet.CatmaApplicationServlet.java

License:Open Source License

@Override
protected void servletInitialized() throws ServletException {
    super.servletInitialized();
    getService().addSessionInitListener(new SessionInitListener() {

        @Override//  w ww  .  ja  v  a 2s.co m
        public void sessionInit(SessionInitEvent event) throws ServiceException {
            event.getSession().addBootstrapListener(new CatmaBootstrapListener());
        }
    });

    getService().setSystemMessagesProvider(new SystemMessagesProvider() {
        @Override
        public SystemMessages getSystemMessages(SystemMessagesInfo systemMessagesInfo) {
            CustomizedSystemMessages messages = new CustomizedSystemMessages();
            try {
                String problemRedirectURL = RepositoryPropertyKey.BaseURL
                        .getValue(RepositoryPropertyKey.BaseURL.getDefaultValue());

                messages.setAuthenticationErrorURL(problemRedirectURL);
                messages.setInternalErrorURL(problemRedirectURL);
                messages.setSessionExpiredURL(problemRedirectURL);
                messages.setCommunicationErrorURL(problemRedirectURL);
                messages.setCookiesDisabledURL(problemRedirectURL);
            } catch (Exception e) {
                e.printStackTrace();
            }
            return messages;
        }
    });

}

From source file:pl.exsio.frameset.vaadin.bootstrap.spring.DefaultSpringSystemMessagesProvider.java

License:Open Source License

@Override
public SystemMessages getSystemMessages(Locale locale) {
    CustomizedSystemMessages systemMessages = new CustomizedSystemMessages();
    String message;/*from  w  ww.ja v  a2s  .c o m*/

    message = this.messageSource.getMessage("vaadin.sessionExpired.Caption", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setSessionExpiredCaption(message);
    }
    message = this.messageSource.getMessage("vaadin.sessionExpired.Message", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setSessionExpiredMessage(message);
    }
    message = this.messageSource.getMessage("vaadin.sessionExpired.URL", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setSessionExpiredURL(message);
    }
    message = this.messageSource.getMessage("vaadin.sessionExpired.NotificationEnabled", null,
            MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        boolean notificationEnabled = (message.equalsIgnoreCase("true") || message.equalsIgnoreCase("1"));
        systemMessages.setSessionExpiredNotificationEnabled(notificationEnabled);
    }

    message = this.messageSource.getMessage("vaadin.communicationError.Caption", null, MESSAGE_NOT_FOUND,
            locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setCommunicationErrorCaption(message);
    }
    message = this.messageSource.getMessage("vaadin.communicationError.Message", null, MESSAGE_NOT_FOUND,
            locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setCommunicationErrorMessage(message);
    }
    message = this.messageSource.getMessage("vaadin.communicationError.URL", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setCommunicationErrorURL(message);
    }
    message = this.messageSource.getMessage("vaadin.communicationError.NotificationEnabled", null,
            MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        boolean notificationEnabled = (message.equalsIgnoreCase("true") || message.equalsIgnoreCase("1"));
        systemMessages.setCommunicationErrorNotificationEnabled(notificationEnabled);
    }

    message = this.messageSource.getMessage("vaadin.authenticationError.Caption", null, MESSAGE_NOT_FOUND,
            locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setAuthenticationErrorCaption(message);
    }
    message = this.messageSource.getMessage("vaadin.authenticationError.Message", null, MESSAGE_NOT_FOUND,
            locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setAuthenticationErrorMessage(message);
    }
    message = this.messageSource.getMessage("vaadin.authenticationError.URL", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setAuthenticationErrorURL(message);
    }
    message = this.messageSource.getMessage("vaadin.authenticationError.NotificationEnabled", null,
            MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        boolean notificationEnabled = (message.equalsIgnoreCase("true") || message.equalsIgnoreCase("1"));
        systemMessages.setAuthenticationErrorNotificationEnabled(notificationEnabled);
    }

    message = this.messageSource.getMessage("vaadin.internalError.Caption", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setInternalErrorCaption(message);
    }
    message = this.messageSource.getMessage("vaadin.internalError.Message", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setInternalErrorMessage(message);
    }
    message = this.messageSource.getMessage("vaadin.internalError.URL", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setInternalErrorURL(message);
    }
    message = this.messageSource.getMessage("vaadin.internalError.NotificationEnabled", null, MESSAGE_NOT_FOUND,
            locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        boolean notificationEnabled = (message.equalsIgnoreCase("true") || message.equalsIgnoreCase("1"));
        systemMessages.setInternalErrorNotificationEnabled(notificationEnabled);
    }

    message = this.messageSource.getMessage("vaadin.outOfSync.Caption", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setOutOfSyncCaption(message);
    }
    message = this.messageSource.getMessage("vaadin.outOfSync.Message", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setOutOfSyncMessage(message);
    }
    message = this.messageSource.getMessage("vaadin.outOfSync.URL", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setOutOfSyncURL(message);
    }
    message = this.messageSource.getMessage("vaadin.outOfSync.NotificationEnabled", null, MESSAGE_NOT_FOUND,
            locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        boolean notificationEnabled = (message.equalsIgnoreCase("true") || message.equalsIgnoreCase("1"));
        systemMessages.setOutOfSyncNotificationEnabled(notificationEnabled);
    }

    message = this.messageSource.getMessage("vaadin.cookiesDisabled.Caption", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setCookiesDisabledCaption(message);
    }
    message = this.messageSource.getMessage("vaadin.cookiesDisabled.Message", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setCookiesDisabledMessage(message);
    }
    message = this.messageSource.getMessage("vaadin.cookiesDisabled.URL", null, MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        systemMessages.setCookiesDisabledURL(message);
    }
    message = this.messageSource.getMessage("vaadin.cookiesDisabled.NotificationEnabled", null,
            MESSAGE_NOT_FOUND, locale);
    if (!message.equals(MESSAGE_NOT_FOUND)) {
        boolean notificationEnabled = (message.equalsIgnoreCase("true") || message.equalsIgnoreCase("1"));
        systemMessages.setCookiesDisabledNotificationEnabled(notificationEnabled);
    }

    return systemMessages;
}