package com.sap.hana.cloud.samples.benefits.logout; import javax.security.auth.login.LoginContext; import javax.security.auth.login.LoginException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.sap.security.auth.login.LoginContextFactory; public class LogoutServlet extends HttpServlet { private static final long serialVersionUID = 1L; private final Logger logger = LoggerFactory.getLogger(getClass()); @Override protected void service(HttpServletRequest request, HttpServletResponse response) { try { if (request.getRemoteUser() != null) { logout(); } else { response.sendRedirect("logout.jsp"); //$NON-NLS-1$ } } catch (Exception e) { logger.error("Logout failed", e); //$NON-NLS-1$ response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR); } } private void logout() throws LoginException { LoginContext loginContext = LoginContextFactory.createLoginContext(); loginContext.logout(); } }