Como fazer um cookie com javaWeb?

Pessoal Alguém sabe como fazer um cookie no Java Web?
Preciso salvar alguns dados no meu cliente, mas eu não sei fazer e ainda por cima de tudo não encontrei artigos e material detalhado de como fazer.
Se alguém tiver um exemplo de como fazer e como resolver este meu problema, por favor escrevam ai.
Preciso ter um exemplo simples de como fazer uma classe com esta minha tarefa.
Obrigado e até?
Aguardando…

Usa o HttpSession response para adicionar o cookie, ta usando algum framework ??

Tche obrigado pela resposta, mas ela somente não adianta de nada para mim se eu não sei como fazer todas as etapas.
Sei que sua idéia foi me ajudar, mas infelizmente não ha fez.
Preciso de um exemplo de como fazer.
Obrigado, mas só assim eu não vo conseguir resolver este meu problema.

eu uso o jsf 2 fica mais ou menos assim

FacesContext context = FacesContext.getCurrentInstance();
        HttpSession sessao = (HttpSession) context.getExternalContext().getSession(true);
        Cookie ck = new Cookie("NOME", "VALOR");
        ck.setMaxAge(-1);
        ((HttpServletResponse) context.getExternalContext().getResponse()).addCookie(ck);

Tche obrigado novamente pela resposta.
Só que tem uma coisa, quando vo instanciar a minha classe FacesContext ela não instância, abaixo segue o código referente ao que eu fiz para cookies.
O que será que pode estar acontencendo para que eu não possa instânciar esta classe?

[code]package src.mv.utils;

import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class ServletCookies extends HttpServlet{

public void doPost(HttpServletRequest req,HttpServletResponse res) {

    FacesContext context = FacesContext.getCurrentInstance();
    HttpSession sessao = (HttpSession) context.getExternalContext().getSession(true);
    Cookie ck = new Cookie("NOME", "VALOR");
    ck.setMaxAge(-1);
    ((HttpServletResponse) context.getExternalContext().getResponse()).addCookie(ck);

}

}
[/code]
Obigado pela ajuda ai.

[quote=andre07041989]Tche obrigado novamente pela resposta.
Só que tem uma coisa, quando vo instanciar a minha classe FacesContext ela não instância, abaixo segue o código referente ao que eu fiz para cookies.
O que será que pode estar acontencendo para que eu não possa instânciar esta classe?

[code]package src.mv.utils;

import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class ServletCookies extends HttpServlet{

public void doPost(HttpServletRequest req,HttpServletResponse res) {

    FacesContext context = FacesContext.getCurrentInstance();
    HttpSession sessao = (HttpSession) context.getExternalContext().getSession(true);
    Cookie ck = new Cookie("NOME", "VALOR");
    ck.setMaxAge(-1);
    ((HttpServletResponse) context.getExternalContext().getResponse()).addCookie(ck);

}

}
[/code]
Obigado pela ajuda ai.
[/quote]

é que vc ta usando Servlet o método que passei e para JSF 2.0.

tenta assim :

public void doPost(HttpServletRequest req,HttpServletResponse res) {

        Cookie ck = new Cookie("NOME", "VALOR"); //Nome do cookie e o valor que ele deve conter
        ck.setMaxAge(-1); //Marca que o cookie tem vida até o fim da sessão

        res.addCookie(ck);//O servlet já te traz o HttpServletResponse 
}

Carra muito obrigado pela resposta.
Percebi que vc entende bastante de JavaWeb.
Então exatamente por isto vo te pedir mais uma ajuda.
Estou precisando passar uma relatório Jasper para meu cliente.
Tipo ele clica em imprimir e ai pronto aparece na tela dele o relatorio.
Daria para fazer por servlet mesmo. Se tiver como fazer assim como estou pensando espero um toque.
Sou novo em java, mas estou evoluindo rápido “Pelo menos eu acredito nisto” e sou ainda mais novo ainda em Java Web.
Se tiver uma forma de fazer isto espero que eu tenha uma ajuda.
O seu exemplo foi muito util para mim. Eu consegui fazer ele, mas dai por outros motivos acabei utilizando o SharedObject do Flex 3.5.
Neste projeto eu estou trabalhando com java “E no java todas as excuções” e flex “Flex para a parte visual” e iReport "Para relatorios"
Não sei se isto serve para entender como estou trabalhando.
Obrigado e aguardando …

cara,nao esta no topico certo mas da uma olhada neste link

http://www.furutani.com.br/tutoriais/JasperReportFlex.pdf

pode te da uma ideia…

flw

Estou com problema parecido, eu gravo um cookie para salvar o idioma escolhido pelo usuário em sua última sessão, porém após dar um reload (F5) no firefox, tento pegar os cookies mas só e é listado o cookie da sessão do JSF. Gostaria de saber como eu posso fazer isso? Salvar um locale (“pt_BR” ou “en_US”) no cookie e depois ler na minha tela inicial da aplicação. Se alguem puder ajudar, agradeço.

FacesContext context = FacesContext.getCurrentInstance();
        HttpSession sessao = (HttpSession) context.getExternalContext().getSession(true);
        HttpServletRequest req = (HttpServletRequest) FacesContext.getCurrentInstance().
                getExternalContext().getRequest();
        List<Cookie> cookies = new ArrayList<Cookie>();
        try {
            cookies = Arrays.asList(req.getCookies());
            Cookie cookie = null;
            if (cookies != null) {
                for (Cookie ck : cookies) {
                    if (ck.getName() != null && ck.getName().equals("testeCookie")) {
                        cookie = ck;
                    }
                }
            }
            if (cookie != null) {
                Locale lc = new Locale(cookie.getValue());
                if (lc != null) {
                    System.out.println("Locale anterior = " + lc.toString());
                }
            } else {
                Locale locale = req.getLocale();
                cookie = new Cookie("testeCookie", locale.toString());
                cookie.setComment("Informação de i18n");
                cookie.setMaxAge(60 * 60 * 24 * 30); // expira em 1 mês
                cookie.setDomain(".localhost:8080/");
                cookie.setPath("/");
                cookie.setVersion(1);
                ((HttpServletResponse) context.getExternalContext().getResponse()).addCookie(cookie);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }

Este aí é o meu código, fica no construtor da página inicial (tela de login)