@Override public final ServletException cannotObtainDestinationFactoryForHttpTransport(final Throwable cause) { final ServletException result = new ServletException(String.format(getLoggingLocale(), cannotObtainDestinationFactoryForHttpTransport$str()), cause); final StackTraceElement[] st = result.getStackTrace(); result.setStackTrace(Arrays.copyOfRange(st, 1, st.length)); return result; } private static final String cannotLoadClass = "JBWS024031: Cannot load class %s";
@Override public final ServletException couldNotInstantiateComponent(final String name, final Exception e) { final ServletException result = new ServletException(String.format(getLoggingLocale(), couldNotInstantiateComponent$str(), name), e); final StackTraceElement[] st = result.getStackTrace(); result.setStackTrace(Arrays.copyOfRange(st, 1, st.length)); return result; } private static final String cannotLoadClass = "UT010014: Could not load class %s";
@Override public final ServletException deploymentStopped(final String deployment) { final ServletException result = new ServletException(String.format(getLoggingLocale(), deploymentStopped$str(), deployment)); final StackTraceElement[] st = result.getStackTrace(); result.setStackTrace(Arrays.copyOfRange(st, 1, st.length)); return result; } private static final String headerNameWasNull = "UT010052: Header name was null";
@Override public final ServletException userAlreadyLoggedIn() { final ServletException result = new ServletException(String.format(getLoggingLocale(), userAlreadyLoggedIn$str())); final StackTraceElement[] st = result.getStackTrace(); result.setStackTrace(Arrays.copyOfRange(st, 1, st.length)); return result; } private static final String loginFailed = "UT010031: Login failed";
@Override public final ServletException loginFailed() { final ServletException result = new ServletException(String.format(getLoggingLocale(), loginFailed$str())); final StackTraceElement[] st = result.getStackTrace(); result.setStackTrace(Arrays.copyOfRange(st, 1, st.length)); return result; } private static final String authenticationFailed = "UT010032: Authenticationfailed";
@Override public final ServletException notAMultiPartRequest() { final ServletException result = new ServletException(String.format(getLoggingLocale(), notAMultiPartRequest$str())); final StackTraceElement[] st = result.getStackTrace(); result.setStackTrace(Arrays.copyOfRange(st, 1, st.length)); return result; } private static final String asyncNotStarted = "UT010018: Async not started";
@Override public final ServletException authenticationFailed() { final ServletException result = new ServletException(String.format(getLoggingLocale(), authenticationFailed$str())); final StackTraceElement[] st = result.getStackTrace(); result.setStackTrace(Arrays.copyOfRange(st, 1, st.length)); return result; } private static final String noSession = "UT010033: No session";
@Override public final ServletException noWebSocketHandler() { final ServletException result = new ServletException(String.format(getLoggingLocale(), noWebSocketHandler$str())); final StackTraceElement[] st = result.getStackTrace(); result.setStackTrace(Arrays.copyOfRange(st, 1, st.length)); return result; } private static final String unknownAuthenticationMechanism = "UT010039: Unknown authentication mechanism %s";
@Override public final ServletException cannotObtainRegistry(final String registryInterfaceName) { final ServletException result = new ServletException(String.format(getLoggingLocale(), cannotObtainRegistry$str(), registryInterfaceName)); final StackTraceElement[] st = result.getStackTrace(); result.setStackTrace(Arrays.copyOfRange(st, 1, st.length)); return result; } private static final String cannotObtainDestinationFor = "JBWS024029: Cannot obtain destination for %s";
@Override public final ServletException cannotObtainDestinationFor(final String requestURI) { final ServletException result = new ServletException(String.format(getLoggingLocale(), cannotObtainDestinationFor$str(), requestURI)); final StackTraceElement[] st = result.getStackTrace(); result.setStackTrace(Arrays.copyOfRange(st, 1, st.length)); return result; } private static final String cannotObtainDestinationFactoryForHttpTransport = "JBWS024030: Cannot obtain destination factory for http transport";
@SuppressWarnings("bsiRulesDefinition:htmlInString") protected void checkSessionCookieConfig(SessionCookieConfig sessionCookieConfig) throws ServletException { if (sessionCookieConfig == null) { LOG.warn("Cannot validate the configuration of the session cookie!"); return; } boolean checkSessionCookieSecureFlag = CONFIG.getPropertyValue(CheckSessionCookieSecureFlagProperty.class).booleanValue(); boolean secureFlagOk = !checkSessionCookieSecureFlag || sessionCookieConfig.isSecure(); boolean isValid = true; if (!sessionCookieConfig.isHttpOnly()) { LOG.error("'HttpOnly' flag has not been set on session cookie. Enable the flag in your web.xml (<session-config>...<cookie-config>...<http-only>true</http-only>...</cookie-config>...</session-config>)"); isValid = false; } if (!secureFlagOk) { LOG.error("'Secure' flag has not been set on session cookie. Enable the flag in your web.xml " + "(<session-config>...<cookie-config>...<secure>true</secure>...</cookie-config>...</session-config>)" + " or disable the 'Secure' flag check using property '{}=false' if no encrypted channel (https) to the end user is used.", BEANS.get(CheckSessionCookieSecureFlagProperty.class).getKey()); isValid = false; } if (!isValid) { // don't give detailed error message to clients! ServletException ex = new ServletException("Internal Server Error. See server log for details."); ex.setStackTrace(new StackTraceElement[]{}); throw ex; } }