Como utilizar ServletContext em Action?

8 respostas
dahenz

Preciso gerar um relatório pdf em uma Action do Struts, porém preciso que ele seja gerado utilizando o ServletContext para display…

Alguém sabe como utilizo HttpServletResponse de ServletContext???

Obrigado…

8 Respostas

furutani

Por que?

G

dahenz, na verdade você precisa apenas do HttpServletResponse.getWritter.print().

dahenz

Humm… na verdade quero gerar o boleto bancário stella caelum…

Eu monto ele direitinho… mas na hora de mostrar precisaria de um html context ou algo assim…

Eu faria isso com a mão nas costas em JSF… mas esse projetinho é em Struts… sei que é feio e que deveria conhecer as duas formas… hehehe mas nunca gerei um relatório dentro de uma Action…

Alguém tem um exemplo???

Valew furutani e garcia

G

faz response.getWritter.print que deve funcionar. De qualquer forma amanhã de manhã na empresa olho isso melhor e te ajudo. Se eu esquecer, você pode me enviar uma MP lembrando?

Abraços

G

Olhando esse exemplo aqui: http://stella.caelum.com.br/boleto-index.html

Se você usar como base a chamada de gerador.getPDF, que te retorna um array de bytes, você pode imprimir isso via response assim:

byte[] bPDF = gerador.toPDF(); response.setContentType("application/pdf"); response.print(new String(bPDF, "utf-8"));

dahenz

Oi garciajj… :slight_smile: Estou ressucitando o post pois agora voltei a mexer com o projeto struts…

Estou olhando o exemplo que tu mandaste abaixo, e gostaria de saber de onde você tirou esse response… Aí que eu estou me atrapalhando…

Obrigado pela sua ajuda…

G

Isso eu fiz na hora, hehehehe. Todo método do Struts 1x deve ter método com a assinatura:

execute(ActionMapping mapping, ActionForm form, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)

Ou seja, response é o nome do valor para HttpServletRequest. Ou você usa Struts2?

dahenz

Oi garcia… uso Struts2…

Devo instanciar a classe HttpServletContext???

Este código que você utilizou é para Struts 1 somente???

Valew

Criado 28 de outubro de 2009
Ultima resposta 13 de nov. de 2009
Respostas 8
Participantes 3