Quando você está desenvolvendo aplicações ADF Faces e Web Center Portal, ao abrir algumas abas, você pode se deparar com a seguinte mensagem de expiração de sessão:
“Because of inactivity, your session has timed out and is no longer active. Click OK to reaload the page.” .
Isso acontece porquê o espaço de TOKEN CACHE esgotou e o ADF não consegue armazenar as páginas já visitadas e ele “se perde” e lança uma popup com a mensagem acima.
Para aumentar o tamanho do TOKEN CACHE, basta inserir o seguinte parâmetro no web.xml
1 2 3 4 |
<context-param> <param-name>org.apache.myfaces.trinidad.CLIENT_STATE_MAX_TOKENS</param-name> <param-value>25</param-value> </context-param> |
Quando não informado esse parâmetro, o valor default é 15.
Em aplicações Web Center Portal, logo que você cria a aplicação, é inserido esse parâmetro com valor 3, isso faz essa popup ser lançada quando você abre aproximadamente 2 abas e de forma randômica quando passa algum tempo que você está com a sessão aberta.
Tome cuidado ao aumentar o parâmetro, pois isso aumenta a quantidade de memória consumida pelo servidor, faça testes e aumente apenas até um valor que atenda suas necessidades.
Segue abaixo um post com maiores informações:
http://andrejusb.blogspot.com.br/2011/07/adf-view-state-tuning-for-large.html
Até o próximo post.