Em servlets, quando se usa System.out.println(), a saída ocorre no console do servidor, não na página web. Olhe o console onde está aberto o seu servidor…
só para completar o que o nosso amigo rafa falou, se você estiver usando uma IDE como o Eclipse, você pode rodar o Tomcat pelo Eclipse atraves de um plugin e acompanhar seus System.out no proprio console do Eclipse, mas se você estiver rodando o Tomcat pelo serviço do windows, você pode acompanhar os System.out pelos logs do Tomcat que ficam na pasta logs dentro da pasta do Tomcat, o log que vai gerar seus System.out se não me engano é o tomcat.out .
E para aparece algo na sua página você precisa escrever algo nela, no seu caso coloque no metodo service o comando out.print(“aqui é o que você deseja que apareça na tela”); como disse nosso amigo danilo.
Pessoal se eu estiver falando besteira me corrijam, please.
[quote=tecdanilo][quote=silviofernandes]
E para aparece algo na sua página você precisa escrever algo nela, no seu caso coloque no metodo service o comando response.write(“aqui é o que você deseja que apareça na tela”);
[/quote]
Somente corrigindo o colega, para que possa escrever na página que está sendo processada deve proceder da seguinte forma:
PrintWriter saida = response.getWriter();
saida.println("<h1>Hello World.</h1>");
// ou ainda
out.println("<h1>Hello World</h1>");
Té mais![/quote]
Pessoal, também to lendo o mesmo livro e tendo os mesmos problemas com esse exemplo aí. Já segui as orientações de voces e o resultado foi o seguinte:
a) localizei o arquivo stdout_.log com as saídas do system.out.println. Beleza!
Agora, gostaria de saber o seguinte: a única forma de acompanhar o console do tomcat é editando esse arquivo sempre que executar o servlet ou existe algo mais prático (alguma janela que se atualize sempre que o conteudo do arquivo mudar, ou algum comando no DOS que gere os resultados a cada execução, ou coisa do tipo..)?
b) alterei o código para:
import javax.servlet.*;
public class PrimitiveServlet implements Servlet {
public void init(ServletConfig config) throws ServletException
{
PrintWriter saida = response.getWriter();
saida.println("<h1>init</h1>");
}
}
Mas o Eclipse acusou : "PrintWriter cannot be resolved to a type" e "response cannot be resolved". Então fiz as seguintes alterações no código:
import java.io.PrintWriter;
import javax.servlet.*;
public class PrimitiveServlet implements Servlet {
public void init(ServletConfig config) throws ServletException
{
ServletResponse response;
PrintWriter saida = response.getWriter();
saida.println("<h1>init</h1>");
}
}
Mas o Eclipse continuou acusando erros: "Unhandled exception type IOException" e "The local variable response may not have been initialized". O Eclipse recomenda "Add throws declaration" (isso deixaria a assinatura do método diferente da assinatura na interface implementada - javax.servlet.Servlet.init()), "Initialize the variable"(isso eu implementei) e "Surround with try/catch"(implementei também). O Eclipse então reclamou que a variável "saida" também deveria ser inicializada e eu o fiz, resultando no seguinte código: