Problemas com o servlet de autenticação

3 respostas
T

Olá pessoal…
Estou com um problema na utilização de um servlet de filtro, onde minha aplicação está usando o framework Struts. O problema consiste em que eu preciso acessar as informações que foram submetidas na JSP, porém quando tento acessar algum atributo, da seguinte maneira:
[color=“darkred”]HttpServletRequest r = (HttpServletRequest)request;
String op = r.getAttribute(“op”).toString();
[/color]
O valor que é setado na String op está null, resumindo não consigo pegar os atributos submitidos na pagina, dentro do servlet de filtro.
Abaixo segue a classe inteira:

[i][b][color=“red”]public class AutenticacaoFiltro extends HttpServlet implements Filter {

/* (non-Javadoc)
 * @see javax.servlet.Filter#init(javax.servlet.FilterConfig)
 * 
 */
private FilterConfig config;
private ServletContext context;
private HttpServletRequest r;

public void init(FilterConfig config) throws ServletException {
	this.config = config;
}


/* (non-Javadoc)
 * @see javax.servlet.Filter#doFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain)
 */
public void doFilter(ServletRequest request,ServletResponse response,FilterChain chain)throws IOException, ServletException {
	context = config.getServletContext();
	HttpServletRequest r = (HttpServletRequest)request;
	HttpSession session = r.getSession(true);
	System.out.println(session.getAttribute("acao"));
	String op = r.getAttribute("op").toString();
	chain.doFilter(request, response);
		
}
	
/* (non-Javadoc)
 * @see javax.servlet.Filter#destroy()
 */
public void destroy() {

}

}[/color][/b][/i]

Se alguém souber com eu posso pegar os atributos da requisição, dentro dessa classe servlet acima, por favor me ajudem!

Obrigado pela Atenção!!!

3 Respostas

C

Olá Tenorio,
Para vc pegar os campos enviados pelo teu JSP não pode usar

getAttribute(String nomedocampo)

mas sim

getParameter(String nomedocampo)

getAttribute é so pra pegar atributos na sessao, getParameter é pra pegar do request!!!

Tenta lá que vai dar certo!!!

Até mais!

C

Opa…
Eu tava querendo dizer que no caso dele, que é pegar campos passados de um form, usa-se getParameter() do request.
E pra casos de pegar sessao usa-se o getAttribute(), mas é claro que esse método no caso da classe HttpSession.
Descurpe se não deixei claro as coisas!!

Hasta!

N

Perae…
Pra pegar atributos da sessão, vc usa HttpSession!

No request, tb se pode setar atributos.
getAttibute é quase universal para J2EE!!!

T+

Criado 11 de setembro de 2004
Ultima resposta 11 de set. de 2004
Respostas 3
Participantes 3