maquiavelbona 26 de dez. de 2007
Estranho, o firefox não é tão fresco para isso. Testei esse html e funcionou aqui, mesmo faltando abrir a tag body. Teste isso e comprove.
Até!
sergiolopes 26 de dez. de 2007
muda o content type para text/html:
response.setContentType("text/html");
mano.pp 26 de dez. de 2007
não entedir onde devo usar ???
response.setContentType("text/html");
o codigo e esse:
@Override
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
Fachada sistema = Fachada.getInstancia();
Collection<Cliente> lista = null;
try {
lista = sistema.listarCliente();
Iterator<Cliente> i = lista.iterator();
PrintWriter saida = resp.getWriter();
saida.write("<html> " +
" <head></head> " +
" <table border= '1' > " +
" <tr><th> Nome</th><th> Codigo</th></tr> ");
while(i.hasNext()) {
Cliente temp = i.next();
saida.write("<tr><td> " + temp.getNome() + "</td></tr> ");
}
saida.write("</table></body> " +
" </html> " );
} catch (ConectarException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
renandemelo 26 de dez. de 2007
aqui..
public void doGet ( HttpServletRequest req , HttpServletResponse resp ) throws ServletException , IOException {
resp .setContentType ( "text/html" ) ;
Fachada sistema = Fachada .getInstancia () ;
Collection & lt ;Cliente> lista = null;
try {
lista = sistema .listarCliente () ;
Iterator & lt ;Cliente> i = lista.iterator();
PrintWriter saida = resp .getWriter () ;
saida .write ( "<html> " +
" <head></head> " +
" <table border='1' >" +
" <tr><th>Nome</th><th>Codigo</th></tr>" ) ;
while ( i .hasNext ()) {
Cliente temp = i .next () ;
saida .write ( "<tr><td>" + temp .getNome () + "</td></tr>" ) ;
}
saida .write ( "</table></body>" +
" </html>" ) ;
} catch ( ConectarException e ) {
// TODO Auto - generated catch block
e .printStackTrace () ;
}
leonardom 26 de dez. de 2007
Coloque um flush no final também após de saida.write("</table></body>" + " </html>" );
saida.write("</table></body>" +
" </html>" );
saida.flush();
davidbuzatto 26 de dez. de 2007
leonardom:
Coloque um flush no final também após de saida.write("</table></body>" + " </html>" );
saida.write("</table></body>" +
" </html>" );
saida.flush();
Use saida.close() ao invés do flush(). O close já vá fazer o flush automaticamente.
Até mais!
mano.pp 26 de dez. de 2007
Boa Tarde…
Agradeço muito a ajuda de vocês . Mas não entender porque usar :
[ u ] [ b ] saida . flush (); [ /b ][ /u ]
[ u ][ b ] saida . close (); [ /u ][ /b ][ size=18 ]
Isto tem haver com segurança com servilet ou é só pra fechar a saida em html ????
Mas deu certo a dica que vocês passaram ....
Pedrosa 26 de dez. de 2007
Não seria mais fácil passar essa lista no request e montar o html no seu devido lugar o JSP?
mano.pp 27 de dez. de 2007
Pedrosa, como é que faz isto não sei relacionar um resultado de servlet com JSP???
se você poder posta como faz isto agradeço, pois a unica forma de mostra um resultado que sei é este…
Pedrosa 27 de dez. de 2007
Simples passe sua lista no request e monte no JSP:
public void service(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
RequestDispatcher rd;
request.setAttribute("suaLista",sistema.listarCliente());
rd = getServletContext().getRequestDispatcher("/SuaJSP.jsp");
rd.forward(request, response);
}
No JSP você pode usar o JSTL com a tag foreach para montar essa lista:
<c:forEach var= "lista" items= " ${ suaLista } " >
${ lista . codigo } ">
${ lista . nome }
</c:forEach>
Fica mais limpo, e se não quiser fazer esse foreach olha a displaytag ela monta os resultados de forma mais profissional:
http://displaytag.homeip.net/displaytag-examples-1.1/example-pse.jsp
Onde poderia ter um JSP assim:
<display:table requestURI= "SuaServlet?acao=paginar" name= " ${ suaLista } " uid= "suaLista" class= "simple" pagesize= "10" export= "false" >
<display:column property= "codigo" title= "Codigo"/ >
<display:column property= "nome" title= "Nome"/ >
</display:table>
mano.pp 28 de dez. de 2007
Pedrosa... Foi muito boa sua explicação e logico que desta forma e melhor programa o codigo fico muito mas limpo. apesar que no segundo exemplo fiquei em duvida so bre a parte do codigo:
[quote]requestURI="SuaServlet?acao=paginar "[code]
tem que ser assim ou paginar e jsp?????? que vai receber.
mesmo assim agradeço pela forma...