Verificar existência de Cookies

3 respostas
Mapko

Pessoal, comecei a estudar J2EE e estou com problemas com cookies.

Tenho uma tela de login JSP e nela eu preciso verificar
se já há algum cookie com o nome de usuário e se tiver preciso
colocar em um campo.
O problema é que não sei como verificar se já tem algum cookie.

Tentei isso mas não funcionou:

<%

				 Cookie[] lista = request.getCookies();	
	 			String    nome = "";
				int i = 0;
				if (lista.lenth() != 0 ) {
				Cookie cookie = lista[i];
				nome = cookie.getValue().toString();
				}
				
			%>

Tentei isso também e não funcionou:

<%

				 Cookie[] lista = request.getCookies();	
	 			String    nome = "";
				int i = 0;
				if (lista[i].getValue() != null ) {
				Cookie cookie = lista[i];
				nome = cookie.getValue().toString();
				}
				
			%>

Pode ter alguma coisa a ver com o fato de eu estar executando pela primeira vez essa página....e o erro aponta na hora de verificar ( diz que não pode usar length e size )
Então é isso....preciso de uma ajuda....obrigado.

3 Respostas

rod

antes vc precisa ver se esta armazenando os cookies no cliente da forma correta.

Cookie cookie = new Cookie("nome", "rodrigo");
		response.addCookie(cookie);

Depois, vc consegue pegar todos os cookies que vc armazenou no cliente.

Cookie[] cookies = request.getCookies();
		for (Cookie cookie : cookies) {
			System.out.println(cookie.getName() +" - "+ cookie.getValue());
		}
Mapko

Sim, estou armazenando certo sim.
O problema é verificar se já existem Cookies.
E antes quando eu estava fazendo outros testes ele até executava quando tinha um Cookie (mas não exibia o valor), agora nem isso ele está fazendo porque não tem nenhum Cookie gravado.

C
Mapko:
Sim, estou armazenando certo sim. O problema é verificar se já existem Cookies. E antes quando eu estava fazendo outros testes ele até executava quando tinha um Cookie (mas não exibia o valor), agora nem isso ele está fazendo porque não tem nenhum Cookie gravado.

Você ainda está interessado em saber amigo?!

<f:view>
            
<% String cookieName = "name";
Cookie cookie = new Cookie ("name",cookieName);

Cookie cookies [] = request.getCookies ();
Cookie myCookie = null;
   if (cookies.length == 0 ) {
       
       %>
        <h:outputText value="Você já tem um cookie criado" />
        <br>
            <a href="deletar.jsf">Deletar</a>
     <% } else { %>
     
            <h2><h:outputText value="Formulário para setar um cookie" /></h2>
            <h:form id="UserEntryForm">
                <h:inputText id="name" value="#{UserBean.userName}" />
                <br>
                <h:inputSecret id="pwd" value="#{UserBean.password}" />
                <br>
                <h:commandButton id="submit" action="showcookievalue" value="Setar" />
            </h:form>

Atenciosamente.

Criado 20 de junho de 2008
Ultima resposta 24 de fev. de 2009
Respostas 3
Participantes 3