venho até vocês para saber como é que eu faço para fazer um menu com uma servlet.
Até o momento criei o meu menu, entretanto, apenas fazendo os links para as outras páginas que funcionam perfeitamente com suas servlets.
Gostaria de usar o servlet do menu para fazer um controle de acesso.
Falaram-me que eu tenho que colocar o endereço completo da página que eu quero acessar, entretanto, não entendi nada. =
Então, se alguém poder postar um exemplo simples e o mais importante, explicar como é que funciona, agradeceria muito. =]
Bom, outra pergunta…É de boa prática fazer a verificação da sessão(digo, verificar se a sessão existe) no jsp?
Não sei se eu entendi o seu problema… Você quer criar um menu na sua página mas dependendo do nível de acesso do usuário, você gostaria de deixar de mostrar alguns links?
No seu servlet de menu vc pode implementar um método que acessa um classe sua de controle de acesso…nessa classe vc retorna uma constante como um perfil Ex. (Adiministrador, Usuario Master, Usuario Basic, etc…) e de acordo com esse perfil vc faz um if no servlet testando se o cara tem acesso a esse menu…
Se tiver acesso vc printa ele no html se não tiver não printa… e assim vai…
Opa, bom dia galera,
então, foi o que o CJDJ havia postado(porém, ele editou a mensagem). =]
Eu tenho um menu, entretanto, não possuo uma servlet nele. O menu apenas faz o “links” para as demais páginas.
Gostaria de colocar uma servlet para que eu tivesse mais controle sobre o menu e não apenas o deixar “linkando” páginas.
Bom, a respeito da verificação de sessão, vou dar uma olhada sobre “filtros”.
CJDJ, tem como você colocar novamente o código com a explicação que havia postado antes?
A página atualizou e acabei perdendo o código.
Eu editei a mensagem, porque li rapidamente a sua pergunta e, após postar a resposta, fiquei em dúvida se a mesma seria adequada. Assim, resolvi reforçar o questionamento do Gustavokt, para receber maiores informações em relação a sua dúvida.
//Importacoes diversas.
public class ServletControlador extends HttpServlet {
@Override
public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String cmd = request.getParameter("cmd");
try {
if (cmd.equals("exibe")) {
//Suas operacoes.
} else if (cmd.equals("adicionar")) {
//Suas operacoes.
}
} catch (Exception e) {
}
}
}
Dessa forma, o servlet receberia o comando desejado e efetuaria as ações necessárias. Após a conclusão da rotina, o próprio servlet redirecionaria o usuário à uma página na qual o mesmo conseguisse visualizar o resultado da sua solicitação.
Todas as ações do servlet devem estar circundadas por um try/catch, permitindo o tratamento das exceções ocorridas (redirecionamento para uma página de erro, por exemplo).
Quanto à validação de sessão em cada página, nem pense nisso. Utilize um filter, mecanismo muito mais prático, eficaz e elegante.
Obs.: Esta é apenas uma implementação muito básica. Complemente seus estudos, pesquisando um framework robusto, por exemplo JSF ou Struts.