Próbuję renderować około 100 000 - 80 rekordów kolumn za pośrednictwem FOP i zbiorniki te są zawsze za każdym razem (OutOfMemoryException). Wiem, że iText poradziłby sobie z takim ładunkiem, ale nie mogę go używać z powodu licencji LGPL. Czy istnieją jakieś alternatywne biblioteki Java do iText, które mogą obsłużyć renderowanie dużej ilości danych do pliku PDF?Czy istnieją jakieś alternatywy tworzenia plików PDF w formacie Java PDF do iText?
Odpowiedz
Istnieją komercyjne biblioteki generujące PDF, takie jak BFO i ElegantJ. Jeśli potrzebujesz open source, jest PDFBox, ale nie wiem, czy jest gotowy do produkcji.
Dzięki za sugestie przyjrzę się im. –
PdfBox jest aktywny, teraz strona główna to http://pdfbox.apache.org. – xmedeko
wdrażamy z pdfboxem - działa bardzo ładnie. –
Zobacz RenderX jako alternatywę dla FOP.
To kosztuje, ale jeśli masz istniejące rozwiązanie, które może być najtańsze.
Aspose oferuje a PDF component for Java. Aspose służy również do tworzenia dokumentów Word, Excel, PowerPoint ... w Javie (lub .Net).
Jednak nie jest to darmowe oprogramowanie ...
Biblioteka Aspose Java PDF to gorące śmieci. Nie obsługuje nawet formatowania HTML. – iandisme
Nigdy nie miałem dobrego doświadczenia z żadnymi produktami Aspose - dodatkowo kosztują. – vikingsteve
Czy chciał zwiększyć ilość dostępnej sterty JVM? OUtOfMemory podczas przetwarzania ogromnych ilości danych zwykle wymaga więcej pamięci.
Tak, problem polega na tym, że FOP wymaga zrzutu całego dokumentu XML w pamięci, po prostu nie może obsłużyć obciążenia. Zwiększyłem przestrzeń sterty do 1GB i nadal nie mam wyjścia. –
Qoppa i Crionics oferują komercyjne narzędzia do tworzenia plików PDF.
To może trochę spóźnić się dla pana Mike'a, ale w przypadku, gdy inni mają proste, duże dokumenty, wymagania dotyczące niskiego rozmiaru i redystrybucji, to warto się nimi podzielić. Docmosis Edycja wspólnotowa może być swobodnie rozpowszechniana i może tworzyć bardzo duże dokumenty ze stałym śladem pamięci (przetwarzanie strumieniowe). Ty (lub Twoi klienci - skoro sugerujesz redystrybucję) musiałbyś chcieć zainstalować OpenOffice, aby umożliwić konwersję.
Istnieją pewne alternatywy
try pdfjet jest na licencji BSD i nie jest też wersja komercyjna więcej funkcji http://pdfjet.com/os/edition.html
Dlaczego nie można użyć LGPL? – cletus
Dlaczego nie iText? http://stackoverflow.com/questions/602977/interactive-pdf-creation-alternatives-to-acrobat – adatapost
Um, wspomniał o iText, ale ma ograniczenia ze względu na licencję. – cletus