kissdemon 16 de mai. de 2007
O que está tendando fazer??? Um “redirect” com JavaScript?
Tente:
location.href='../index.jsp';
Pedrosa 16 de mai. de 2007
Qual erro causa?, dica não jogue html ou javascript no Java e vice-versa!
public class TesteResponseServlet extends HttpServlet {
public void service(HttpServletRequest req, HttpServletResponse res)
throws IOException, ServletException {
res.setContentType("text/html");
PrintWriter out = res.getWriter();
out.println("<html><head><title> Meu Primeiro Servlet</title></head> ");
out.println("<body> Teste do HttpServletResponse!</body> ");
out.flush(); //força o envio dos dados do buffer
out.println("</html> ");
}
}
Coloque seu javascript com location.href no trecho acima e veja se funciona, mas nunca use assim!
euller20 16 de mai. de 2007
Pedrosa seguinte,
Estou tentando fazer algo a dias e sem solucao.
Eu tenho um formulario cadastrar com o campo hidden de nome acao, eu trato os dados em um Servlet
Caso a acao seja cadastrar ele tem que cadastrar os dados e redirecionar para a pagina que lista os clientes
so que nao consigo de forma alguma
ja tentei com request.sendRedirect(String url)
ja tentei com dispose.forward
e nada
agora estou tentando novamente com Javascript
kissdemon 16 de mai. de 2007
Euller20,
existem frameworks que otimizam este trabalho p/ vc, como por exemplo o Struts 2. De uma pesquisada.
Caso deseje ficar no servlet mesmo tente o seguinte:
RequestDispatcher rd = request.getRequestDispatcher("/pagina.jsp");
rd.forward(request,response);
Pedrosa 16 de mai. de 2007
Tente algo assim para redirecionar pela Servlet:
RequestDispatcher rd;
String target = "/Pagina.jsp";
rd = getServletContext().getRequestDispatcher(target);
rd.forward(request, response);
Caso precise passar alguma informação para o jsp use:
request . setAttribute ( "variavel" , "valor" );
ou sessao
HttpSession sessao = request . getSession ();
sessao . setAttribute ( "variavel" , "valor" );
Pegando os valores no JSP com expression language assim:
euller20 16 de mai. de 2007
Continua o erro
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
String acao = request . getParameter ( "acao" );
String msg = null ;
Servico servico = new Servico ();
if ( acao == null ){ acao = "" ;}
if ( acao . equals ( "novo" )) {
servico . setNome ( request . getParameter ( "nome" ));
servico . setDescricao ( request . getParameter ( "descricao" ));
float valor = Float . parseFloat ( request . getParameter ( "valor" ));
servico . setValor ( valor );
msg = new ControleServico (). inserirServico ( servico );
try
{
RequestDispatcher rd = request . getRequestDispatcher ( "../index.jsp" );
rd . forward ( request , response );
}
catch ( Exception e )
{
System . out . println ( e . getMessage ());
}
}
Exceção Gerada
Cannot forward after response has been committed
andreiribas 16 de mai. de 2007
cara só uma dica nunca implemente os métodos doGet e doPost, e sim o método service de Servlets.
Se você tá com dificuldade com servlets, recomendo baixar a apostila do curso de java web da caelum
www.caelum.com.br