Duas maneiras de controlar o acesso as páginas da aplicação
Opção I - Dispatcher
Nessa opção vamos criar uma classe que será responsável pelo controle de acesso. Cada vez que acessamos a aplicação, o Tapestry chama o nosso "Dispatcher" que pode permitir ou não o acesso a página solicitada, de acordo com a permissão do usuário, ou pode redirecionar para a página de login da aplicação.
Criando a classe de controle de acesso que implementa a interface Dispatcher.
src/main/resources/org/exemplo/t5teste/services/ AccessDispatcher.java
…
Configurando o Tapestry para chamar o nosso Dispatcher antes de renderizar a página solicitada pelo usuário.
src/main/resources/org/exemplo/t5teste/services/ AppModule.java
... public static void contributeMasterDispatcher( OrderedConfiguration<Dispatcher> configuration) { configuration.addInstance("AccessDispatcher", AccessDispatcher.class, "after:ComponentEvent" , "before:PageRender"); } ...
Opção II - ChenilleKit Access Module
…