• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Generowanie pdf - javaEE

0 głosów
342 wizyt
pytanie zadane 17 marca 2018 w Java przez plucins Stary wyjadacz (11,130 p.)

Cześć,

od kilku godzin walczę z generowaniem pliku pdf w Javie. Utknąłem w punkcie, gdzie generuje się plik który się nie otwiera ( wydaje się pusty ), a lokalnie zapisuje się prawidłowo działający plik pdf.
Potrzebuje jednak, aby ten plik był dostępny do pobrania,a nie zapisywał się lokalnie w projekcie.
Bardzo proszę o wsparcie.

 

@WebServlet("/pdf")
public class PDFServlet extends HttpServlet {
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) {
        HttpSession session = req.getSession();
        List<Installment> installments = (List<Installment>) session.getAttribute("schedule");

        resp.setContentType("application/pdf");
        resp.setHeader("Content-Type","application/x-www-form-urlencoded");
        resp.setHeader("Content-disposition","inline; filename='1_orders.pdf'");
        createPdf(installments);
    }

    private void createPdf(List<Installment> installments){
        Document document = new Document(PageSize.A4);
        try {
            File file = new File("1_orders.pdf");
            PdfWriter.getInstance(document,new FileOutputStream(file));
            document.open();
            PdfPTable table = new PdfPTable(5);
            table.addCell("#");
            table.addCell("Kwota kapitalu");
            table.addCell("Kwota odsetek");
            table.addCell("Oplaty stale");
            table.addCell("Kwota laczna");
            for(Installment i: installments){
                table.addCell(""+i.getNumber());
                table.addCell(""+i.getCapital());
                table.addCell(""+i.getInterest());
                table.addCell(""+i.getFixedFees());
                table.addCell(""+i.getTotalAmount());
            }
            document.add(table);
            document.close();

        } catch (IOException | DocumentException e) {
            e.printStackTrace();
        }
    }

 

komentarz 17 marca 2018 przez Aisekai Nałogowiec (42,190 p.)
Servlety? Poczytaj o springu, bo servlety to dość przestarzała technologia.
komentarz 17 marca 2018 przez plucins Stary wyjadacz (11,130 p.)
Niestety nie ja wybieram technologię, tylko uczelnia ;)
Jednak dziękuję za sugestię.

Spodziewam się jednak, że zmiana technologii nie rozwiąże tego problemu.

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
1 odpowiedź 805 wizyt
pytanie zadane 12 lutego 2020 w Java przez Fortitudo Nowicjusz (160 p.)
0 głosów
3 odpowiedzi 792 wizyt
pytanie zadane 21 maja 2018 w Java przez Paweł Hozer Nowicjusz (120 p.)
+2 głosów
2 odpowiedzi 472 wizyt
pytanie zadane 3 sierpnia 2015 w Java przez NoName Mądrala (5,640 p.)

93,742 zapytań

142,678 odpowiedzi

323,297 komentarzy

63,326 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...