Duvidas sobre struts 2

salve salve pessoal.

Sou iniciante em struts 2 e estou a desenvolver um sistema de vendas e tenho algumas duvidas.

A primeiro é a seguinte:
Tenho um jsp com form para cadastrar um usuário em que ao submeter é enviado para uma action cadastro e depois redireciona para outra jsp dependendo do resultado, até ai funciona direitinho. Mas se eu color a url da action directamente no navegador dá erro de NullpointerException. Sei que para resolver tem que usar interceptador, alguém poderia me ajudar nisso?

2o) O struts 2 tem vários tipos de result entre elas tem o redirect, dispatcher, chain, etc. Eu gostava de saber, se eu tenho um sistema de login qual seria o result type adequado, quando que eu uso os diferentes tipos de result? Em vários tutorial que vejo usam o dispatcher, uma vez que o dispatcher guarda informação no cabeçalho, ou seja sempre que clicar em refresh do navegador saí a informação de que existe de dados que precisam ser enviado blá blá blá…

3o) Como trabalhar com cookies no struts 2?

4o) Como é que funcionam os interceptadores? como faço para bloquear acesso directo as action?

Valeu