Professional Documents
Culture Documents
WebListener;
import jakarta.servlet.http.HttpSessionEvent;
import jakarta.servlet.http.HttpSessionListener;
@WebListener
public class SessionTimeoutListener implements HttpSessionListener {
@Override
public void sessionCreated(HttpSessionEvent event) {
event.getSession().setMaxInactiveInterval(30 * 60); // 30 menit
}
@Override
public void sessionDestroyed(HttpSessionEvent event) {
// Aksi yang dijalankan saat sesi dihancurkan (misalnya, logout)
// ...
}
}
-------------------------------------------------------------
import jakarta.servlet.http.Cookie;
import jakarta.servlet.http.HttpServletResponse;
-------------------------------------------------------------
import javax.enterprise.context.RequestScoped;
import javax.inject.Named;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.Serializable;
import java.util.UUID;
@Named
@RequestScoped
public class LoginBean implements Serializable {
private String username;
private String password;
private boolean loggedIn;