|
|
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
Здравствуйте форумчане! помогите разобраться с jasperreports'ом. 1) есть jsp страница и в нем ссылка на сервлет Код: java 1. 2) сервлет Report Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. так вот, и тут ( String reportPath = FacesContext.getCurrentInstance().getExternalContext().getRealPath("/reports/report.jasper"); ) я получаю эксепшен: Код: plaintext как бы не может найти файл report.jasper, но там есть этот репорт. З.Ы. а самое интересное когда я смотрел(открыл) на ear архив там этого файла нету, как так не понимаю... :( помогите пожалуйста разобраться. З.Ы. в чем моя ошибка или что я не правильно делаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2015, 19:03 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
Музаффар, у меня было что-то похожее при использовании maven: "По умолчанию при сборке из src/main/java забираются только исходники классов, все остальное берется из resources. Могут быть и другие каталоги, но их необходимо явно указать в pom.xml." ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2015, 22:57 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
Aghial, я пока с maven'ом не работаю... т.е. у меня только web.xml есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2015, 02:22 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
Музаффаркак бы не может найти файл report.jasper, но там есть этот репорт. З.Ы. а самое интересное когда я смотрел(открыл) на ear архив там этого файла нету, как так не понимаю... :( помогите пожалуйста разобраться. З.Ы. в чем моя ошибка или что я не правильно делаю? Посмотрите как развернулось ваше приложение на сервере приложений. Может его действительно нет там где вы думаете он должен лежать. А так вместо getRealPath попробуйте использовать getResourceAsStream... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2015, 06:27 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
mad_nazgulПосмотрите как развернулось ваше приложение на сервере приложений. Может его действительно нет там где вы думаете он должен лежать. А так вместо getRealPath попробуйте использовать getResourceAsStream... как я уже говорил там нет этих файлов... но... вообщем вот структура: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2015, 08:23 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
mad_nazgulПосмотрите как развернулось ваше приложение на сервере приложений. Может его действительно нет там где вы думаете он должен лежать. а вот что в сервере приложений: и там нет ни report.jasper, ни report.jrxml ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2015, 08:28 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
mad_nazgul, вроде сделал, репорты были на Application Sources а надо было в Web Content -- resources -- reports. после этого они появились и ear архиве тоже. З.Ы. теперь другая ошибка появилась: строка та же где reportPath , а ошибка java.lang.NoClassDefFoundError: javax/faces/contex/FacesContex ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2015, 09:43 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
Музаффарmad_nazgul, вроде сделал, репорты были на Application Sources а надо было в Web Content -- resources -- reports. после этого они появились и ear архиве тоже. З.Ы. теперь другая ошибка появилась: строка та же где reportPath , а ошибка java.lang.NoClassDefFoundError: javax/faces/contex/FacesContex А куда деплоится приложение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2015, 09:52 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
WGAА куда деплоится приложение? в качестве App Server'а использую Weblogic Server , случайно не из-за этого такие ошибки? попробую на другом сервере запускать приложение может прокатит... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2015, 10:04 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
Музаффарmad_nazgul, вроде сделал, репорты были на Application Sources а надо было в Web Content -- resources -- reports. после этого они появились и ear архиве тоже. З.Ы. теперь другая ошибка появилась: строка та же где reportPath , а ошибка java.lang.NoClassDefFoundError: javax/faces/contex/FacesContex Нету соответствующей библиотеки. Скорее всего ее надо скачать и положить куда дотягивается ClassPath. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2015, 13:21 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
mad_nazgulНету соответствующей библиотеки. Скорее всего ее надо скачать и положить куда дотягивается ClassPath. интересно и странно, а какая библиотека? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2015, 13:43 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
Музаффарmad_nazgulНету соответствующей библиотеки. Скорее всего ее надо скачать и положить куда дотягивается ClassPath. интересно и странно, а какая библиотека? Мне гугл говорит этой javax.faces-api-2.0.jar ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2015, 14:39 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
mad_nazgulМне гугл говорит этой javax.faces-api-2.0.jar ошибка осталась все равно... а есть ли возможность указать путь к файлу по другому? пробовал Код: java 1. возврашает NULL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2015, 15:36 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
mad_nazgul, добавил некоторые библиотеки (jasperreports-6.0.0.jar и javax.faces-api-2.2.jar) к серверу приложений теперь когда Код: java 1. получаю эксепшен Код: plaintext 1. 2. а когда Код: java 1. Код: plaintext 1. 2. 3. 4. 5. 6. З.Ы. во втором случае я получаю NULL ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2015, 20:23 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
Музаффарmad_nazgul, строка 119 это у меня jasperPrint = JasperFillManager.fillReport(reportPath, new HashMap(), beanCollectionDataSource); З.Ы. во втором случае я получаю NULL ... Еще раз используете getResourceAsStream(...) getRealPath() Идет от корня собранного вашего приложения. Причем в зависимости от настроек maven структура может отличаться. Грубо говоря "корень" проекта идет от web или webapp. А потом туда кладутся скомпилированные классы, ресурсы и прочее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2015, 06:18 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
mad_nazgulЕще раз используете getResourceAsStream(...) getRealPath() Идет от корня собранного вашего приложения. Причем в зависимости от настроек maven структура может отличаться. Грубо говоря "корень" проекта идет от web или webapp. А потом туда кладутся скомпилированные классы, ресурсы и прочее. Спасибо, за Ваши ответы и советы! пробовал как Вы сказали getResourceAsStream(...) вроде прошло, но теперь получаю другую ошибку... З.Ы. можете коротко объяснить последовательность, как должно быть все это? 1) и когда я получаю полный путь к файлу скажем через getPath(); я должен указать на файл *.jasper или *.jrxml? 2) аналогично с первым только вместо getPath() getResourceAsStream? 3) скажем я уже получил желаемого (String или InputStream) компилировать надо? ( JasperCompileManager.compileReport(...); ) 4) потом на сколько я понял передаю все на JasperFillManager 5) если вышеуказанные правильны то дальше что? если нет то коротко объясните пожалуйста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2015, 09:28 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
МузаффарСпасибо, за Ваши ответы и советы! пробовал как Вы сказали getResourceAsStream(...) вроде прошло, но теперь получаю другую ошибку... З.Ы. можете коротко объяснить последовательность, как должно быть все это? 1) и когда я получаю полный путь к файлу скажем через getPath(); я должен указать на файл *.jasper или *.jrxml? 2) аналогично с первым только вместо getPath() getResourceAsStream? 3) скажем я уже получил желаемого (String или InputStream) компилировать надо? ( JasperCompileManager.compileReport(...); ) 4) потом на сколько я понял передаю все на JasperFillManager 5) если вышеуказанные правильны то дальше что? если нет то коротко объясните пожалуйста. 1) В зависимости от того, что у вас есть. *.jrxml - это исходник отчета *.jasper - это уже скомпилированные отчет Обычно используют уже скомпилированный отчет, чтобы не тратить время на компиляцию. 2) Настоятельно рекомендую почитать про ресурсы Java и посмотреть примеры 3) См. пункт1 4) Не помню. По идее можно нагуглить примеры. 5) А дальше нужно выгрузить отчет в нужном вам формате. :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2015, 10:35 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
Спасибо, за Ваши ответы и советы! пробовал как Вы сказали getResourceAsStream(...) вроде прошло, но теперь получаю другую ошибку... Какая ошибка и какой теперь исправленный код мы должны сами догадаться? З.Ы. можете коротко объяснить последовательность, как должно быть все это? 1) и когда я получаю полный путь к файлу скажем через getPath(); я должен указать на файл *.jasper или *.jrxml? Я вот вообще не понимаю зачем getPath() Хочешь компилить jrxml-файл на лету, берешь jrxml, потом JasperCompileManager.compileReport(...) получаешь исполняемый report.jasper (который у тебя уже есть, тогда вопрос зачем он тебе) и кидешь его в fillReport Смотрим исходники JasperFillManager. Вариантов там масса. Выбирай тот который тебе нужен. Один из вариантов Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 2) аналогично с первым только вместо getPath() getResourceAsStream? Ну где то так getResourceAsStream(путькакойтамправильный/report.jasper) 3) скажем я уже получил желаемого (String или InputStream) компилировать надо? ( JasperCompileManager.compileReport(...); ) Глядя что ты получил. jrxml надо, jasper нет. Хотя каша тут в вопросе. Что такое "jrxml как String" ??? 4) потом на сколько я понял передаю все на JasperFillManager да. В результате jasper выполняет отчет и возвращает jasperPrint object 5) если вышеуказанные правильны то дальше что? если нет то коротко объясните пожалуйста. экспортируешь JasperPrint в нужный тебе формат (xls, pdf, html, ...) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2015, 11:14 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
mad_nazgul, sanBez, sanBezКакая ошибка и какой теперь исправленный код мы должны сами догадаться? при использовании getResourceAsStream а точнее Код: java 1. я получаю эксепшен, типа Код: plaintext а если я использую Код: java 1. то все проходит успешно до строки: Код: java 1. 2. с ошибкой Код: plaintext З.Ы. я что то недопонемаю или не учитываю... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2015, 14:27 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
InputStream reportPath = FacesContext.getCurrentInstance().getExternalContext().getResourceAsStream("/recources/reports/report.jasper"); Ничего не попутал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2015, 14:38 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
sanBezInputStream reportPath = FacesContext.getCurrentInstance().getExternalContext().getResourceAsStream("/recources/reports/report.jasper"); Ничего не попутал? а поконкретнее можно? если имеете виду recources то да опечатка, и вообще можно просто /reports/report.jasper , а ситуация не измениться... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2015, 15:05 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
вносил изменения в код, Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. пока не работает, получаю исключение, типа Код: plaintext я понял типа нельзя одновременно использовать getOutputStream() и getWriter() , надо либо первую либо вторую, но у меня в коде вообще нету getWriter() ... З.Ы. что я опять сделал не так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2015, 05:31 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
все таки нашел свою ошибку не комментированным осталась строка getWriter() , это в начале сервлета... З.Ы. теперь получаю PDF документ но без информации, т.е. белый лист документа PDF... при этом там есть и статические записи типа Hello world! (для проверки)... что делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2015, 15:38 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
никакие идеи или мнении? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2015, 20:59 |
|
||
|
jasperreports + JEE (EJB/JPA)
|
|||
|---|---|---|---|
|
#18+
проблему решил, вроде работает кроме одного не появляется статические данные вот сам jrxml файл: Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. почему так честно говоря не понимаю. Помогите решит проблему... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.03.2015, 21:39 |
|
||
|
|

start [/forum/topic.php?fid=59&startmsg=38895040&tid=2125601]: |
0ms |
get settings: |
7ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
156ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 198ms |
| total: | 423ms |

| 0 / 0 |
