Paweł W.

Paweł W. java developer at
https://rozwoj-oprog
ramowania.pl

Temat: jsp2excel

hey,

chce zaimplementowac generowanie danych ktore juz zostana wyswietlone w jsp do arkusza excel po nacisnieciu linku. szperalem w google, ale chce spytac czy ktos z Was juz to robil i jakie rozwiazanie ew. poleca?
czy znacie cos z tego:
POI ( http://jakarta.apache.org/poi/ ),
JExcel ( http://jexcelapi.sourceforge.net/ )
JXLS ( http://jxls.sourceforge.net/ )
? chcialbym uzyc biblioteki ktora jest dobra i sprawdzona
dzieki za odp
Michał Gozdera

Michał Gozdera Development Team
Manager, PayU S.A. /
IT Toruń

Temat: jsp2excel

W projekcie nad którym pracuję używamy jxls-a i nie ma z nim żadnych problemów. Dobrze spisuje się przy formatowaniu komórek, tworzymy w nim dokumenty od zera oraz wykorzystujemy szablony plików. Nie używałem pozostałych wymienionych bibliotek więc nie mam porównania ale ja z jxls-a jestem zadowolony.
Dawid Augustynowicz

Dawid Augustynowicz Sun Certified
Enterprise
Architect. Software
Engineer, FI...

Temat: jsp2excel

POI jest rozwiązaniem pierwszym, sprawdzonym i chyba najpopularniejszym. Rozwijanym od wielu wielu lat przez stabilnego dostawcę - apache.
JXLS jest nakładką na poi (w środku korzysta z poi) - pozwala tworzyć template, etc. Jest to tak jakby jeszcze jedna warstwa nad poi, która może być dla ciebie niezłym ułatwieniem jeśli będziesz tworzył coś bardziej skomplikowanego, ale jeśli chcesz rozwiązanie proste, to pozostań na POI
Najprostrzym możliwym rozwiązaniem jest wysłanie zwykłego htmla i ustawienie jako content type xls - excel to łyka i też otwiera. Jeśli masz już kod, który tworzy tobie htmlową tabelkę i chcesz tylko dodać otwieranie tego w excelu, to rozważ, czy to nie będzie dla ciebie najprostrze rozwiązanieDawid Augustynowicz edytował(a) ten post dnia 11.01.08 o godzinie 16:54
Sławomir Wojciechowski

Sławomir Wojciechowski Główny Specjalista
ds. Rozwoju
Aplikacji, T-Mobile
Polska...

Temat: jsp2excel

Ja natomiast w kilku projektach używałem jexcel. Nigdy nie miałem z nim żadnych problemów. Może nie posiada wielu opcji, szczególnie formatowania arkusza itp ale jest stabilny. Co do POI to nie używałem go nigdy do czytania z excela, ale próbowałem czytać wordy do bazy za pomoca HWPF z tego pakietu i okazało się to wielką porażką. Mialem do wczytania kilkanascie tysiecy plikow z czego ok 30% procent zostalo odrzuconych. Pozniej bez problemu wczytalem je bezposrenio do bazy dzieki jej wewnetrznym mechanizmom.

Pozdrawiam
SW
Dawid Augustynowicz

Dawid Augustynowicz Sun Certified
Enterprise
Architect. Software
Engineer, FI...

Temat: jsp2excel

No ja nigdy nie używałem POI do czytania plików zapisanych w Excelu i prawdopodobnie nie sprawdza się w tym najlepiej: jak autorzy twierdzą jest to biblioteka przygotowana do obsługi excela w formacie '97, więc starego formatu - może mieć problem z obsługą nowych formatów. Ale jak kolega twierdzi zależy mu na produkowaniu tabelek, które będą otwierane w excelu. Nie chodzi więc o jakąś skomplikowaną funkcjonalność typu interpretowanie funkcji, etc. tyko zwykłe otworzenie wygenerowanej tabelki w excelu. W tym wypadku proponuję stworzenie zwykłej excelowej tabelki i ustawienie parametru http mime type jako application/msexcel i nazwy pliku (parametr http attachment; filename=...) jako sth.xls.
Pozdro!
D.
Michał Bartyzel

Michał Bartyzel Trener, konsultant

Temat: jsp2excel

Polecam wygenerowanie csv i otwarcie go w Excel. Minium pracy, efekt ten sam. Użytkownicy i tak zapiszą go sobie w formacie xls i nie zauważą różnicy.Michał Bartyzel edytował(a) ten post dnia 27.01.08 o godzinie 21:22
Paweł W.

Paweł W. java developer at
https://rozwoj-oprog
ramowania.pl

Temat: jsp2excel

nie dzieki - csv to nie plik excela - pisalem ze chce generowac dane bezposrednio do excela.
dzieki za Wasze sugestie, uzylem POI(po nacisnieciu linku odpala sie strona jsp, ktora ma ustawione naglowki aplikacji excel i od razu otwiera sie okno do otwarcia/zapisu pliku) i jest calkiem w porzadku. za to moj kolega uzywa JExcel i rowniez sobie to chwali
Krzysztof Iwanicki

Krzysztof Iwanicki Team Leader, NEXIO
Management Sp. z o.
o.

Temat: jsp2excel

Uzywam w aplikacji komercyjnej w projekcie JXLS i ogolnie nie polecam. Ma bardzo powazne problemy z pamiecia. Mianowicie czesto potrafi wykrzaczyc serwer aplikacyjny. Przy generowaniu raportow okolo 20 MB potrzebuje ponad 1GB pamieci operacyjnej. API nie jest dopracowane, po otworzeniu takiego pliku oraz zapisaniu go i zamknieciu jego rozmiar zmniejsza sie 4 krotnie. JXLS wszystkie komórki wypelnia pustym Stringiem, natomiast Excel dokonuje optymalizaji, wyrzucajac puste ("" - pusty string) pola. To jest jeden z wielu problemow z jakimi sie napotkalem uzywajac tego API. Powiem tylko ze raporty sa dosc obszerne objetosciowo.
Andrzej P.

Andrzej P. programista,

Temat: jsp2excel

Paweł Wtorek:
nie dzieki - csv to nie plik excela - pisalem ze chce generowac dane bezposrednio do excela.
dzieki za Wasze sugestie, uzylem POI(po nacisnieciu linku odpala sie strona jsp, ktora ma ustawione naglowki aplikacji excel i od razu otwiera sie okno do otwarcia/zapisu pliku) i jest calkiem w porzadku. za to moj kolega uzywa JExcel i rowniez sobie to chwali

A samo przesyłanie danych to w jaki sposób robiłeś? Servletem?
Paweł W.

Paweł W. java developer at
https://rozwoj-oprog
ramowania.pl

Temat: jsp2excel

dane wygenerowane zostaly w jakims servlecie, nastepnie kazda kolumne danych wrzucilem do sesji(w tablice). potem nastepuje przekierowanie do pliku jsp gdzie dane zostaja wyswietlone userowi na ekran. dodatkowo user ma 2 linki wyswietlone, jeden do generowania danych do pliku txt, a drugi link do generowania danych do pliku excel. i po nacisniecu linku excel nastepuje przekierowanie do pliku jsp ktory juz wrzuca te dane(z tablic ktore nadal sa w sesji) do pliku excel.
Jednak "ladniej" byloby wykonywac ta generacje danych do excela w osobnym servlecie(a nie w pliku jsp tak jak ja to zrobilem)

pozdr

konto usunięte

Temat: jsp2excel

Używam POI od jakiegoś czasu i poza nielicznymi przypadkami Out of Memory dla dużych plików (XML 40MB+ czasami sprawia takie niespodzianki) nie zauważyłem większych problemów. Nie używamy żadnych wudumanych funkcjonalności typu wykresy itp. dlatego ciężko jest mi określić jak wymieniona biblioteka sobie z nimi radzi. Polecam używanie wersji 3.0+, ponieważ wersja 2.x kiepsko radziła sobie z dużymi plikami. OOM pojawiało się znacznie cześciej, dla dużo mniejszych plików.



Wyślij zaproszenie do