setContentType da classe HttpServletResponse

Pessoal,

Estou estudando servlets. Estava usando em meus primeiros testes a IDE Intellij IDEA, por sinal excelente a integração dela com o Tomcat e tudo mais. Agora resolvi verificar se realmente aprendi, fazendo tudo do zero e no braço. Até mesmo o web descriptor fiz na unnha utilizando o JEDIT. É um simples servlet que grava um cookie e resgata o seu valor e mostra em negrito no browser.

Notei o seguinte:

 Nesse teste a primeira vez que executo o meu servlet ocorre tudo normalmente, sem problemas. Mas se eu pressionar o botão de ATUALIZAR do browser a página aparece com as tags HTML como se fizesse parte do texto que quero mostrar para o usuário, exemplo: 

<b>Cookie Atualizado</b><BR><HR><BR> <h1>5 acessos </h1>

Só consegui resolver isso executando o método setContentType da classe HttpServletResponse, exemplo:

response.setContentType("text/html")

depois disso sim, mesmo que eu pressionasse F5 para atualizar o browser as formatações eram sempre interpretadas e não mostradas no browser.

O que me intriga é que o mesmo não acontece nos servlets que desenvolvi com Intellij IDEA.

A dúvida é:

Qual é a função do setContentType? Isso que descrevi assima faz algum sentido ser alguma diferença entre as IDEs usadas ou foi só uma coincidência? ALguém já passou por algo semelhante?

Estou utilizando:
WindowsXP
Tomcat 5.0.25
J2SE 1.4

Obrigado.

A função do setContentType é definir o tipo de conteúdo que o seu servlet vai exibir no browser.
Se você desejar exibir texto puro, deverá fazer assim response.setContentType(“text/plain”), dessa forma o seu texto sairá impresso da forma como está no código.

Este método serve apenas para isso, definir o tipo de conteúdo que será exibido pelo servlet.

Segundo a especificação do servlet 2.4, se não for definido o tipo de conteúdo que será exibido o container considera o ISO-8859-1 por default, mas não informa que tipo de codificação.

tem varios tipos MIME q tu pode especificar como content type… da uma olhada na spec