Я использую веб-узел Omnifaces. Сессия никогда не истекает. Я пробовал с jsf websocket. Результат тот же. Когда я go перехожу на другую страницу, которая не использует веб-сокет, и остается на этой странице, сеанс истекает нормально. Вот пример моих кодов x html с javascript:
<o:socket channel="message" onmessage="onMessage" />
и функции onMessage как
function onMessage(message, channel, event) {
var newBcMsgs = document.getElementById("topF\:newMsgs");
if (!isEmpty(newBcMsgs)) {
addClass(newBcMsgs, "active");
addClass(newBcMsgs, "text-warning");
sessionStorage.setItem(document.getElementById('usernameTop').innerHTML, "news");
}
}
в управляемом бине с ApplicationScoped (import omnifaces.cdi.Pu sh, PushContext):
@Inject
@Push(channel = "message")
private PushContext pushMessage;
public void sendMessage(final String msgs) {
logger.debug("send a msgs now: {}", () -> msgs);
pushMessage.send(msgs);
}
Я использую Omnifaces 3.6 с Payara 5.201 Jakartee 8. Итак, что мне делать или исправлять для разрешения сеанса истекшего при длительном простое?