powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Не передается ResultSet в JasperReport
14 сообщений из 14, страница 1 из 1
Не передается ResultSet в JasperReport
    #34725494
Kha-Ruslan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема вот в чем: ResultSet в моем случае храниться в переменной класса, т.к. я планирую его использовать несколько раз, в целях не нагружать сервак. При передаче этого ResultSet JasperRunManager`у менеджер не заполняет отчет данными резултсета. Если кто-то сталкивался с этой проблемой или знает как это лечиться, помогите, пожалуйста.
Вот кусок программы:
Код: plaintext
1.
2.
resultSet = phonesResults.getResultSet(); // здесь я получаю ResultSet из переменной класса phonesResults
JRResultSetDataSource resultSetDataSource =  new  JRResultSetDataSource(resultSet);
JasperRunManager.runReportToPdfFile("c:\\Temp\\classic.jasper", c:\\Temp\\classic.pdf",  new  HashMap(), resultSetDataSource);
...
Рейтинг: 0 / 0
Не передается ResultSet в JasperReport
    #34725700
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kha-Ruslan...в целях не нагружать сервак.
не делай глупости - не будет проблем.
...
Рейтинг: 0 / 0
Не передается ResultSet в JasperReport
    #34725880
Kha-Ruslan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В любом случае кто нить сталкивался с такой проблемой и как ее решить?
...
Рейтинг: 0 / 0
Не передается ResultSet в JasperReport
    #34726140
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kha-RuslanВ любом случае кто нить сталкивался с такой проблемой и как ее решить?
RTFM
...
Рейтинг: 0 / 0
Не передается ResultSet в JasperReport
    #34726297
Kha-Ruslan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Timm RTFM
Спасибо за полный и ясный ответ!

из RTFMХотя простой ответ RTFM бывает оправдан, когда дается просто лентяю, ссылка на документацию (даже если это набор ключевых слов для поиска в Google) все же лучше.
Бюдь так любезен дай ссылку на документацию.

Далее извиняюсь за неполный вопрос. Постараюсь заполнить пробел.
Известно что при той раскладке, которую приводят в туторах, как например представленном ниже все работает
Код: plaintext
1.
2.
3.
4.
5.
6.
 Class .forName("net.sourceforge.jtds.jdbc.Driver");
Connection connection = DriverManager.getConnection("jdbc:jtds:sqlserver://"serverName":
"serverPort"/"datebase", "login", "password");
Statement statement = connection.createStatement();
resultSet = statement.executeQuery("some query text");
JRResultSetDataSource resultSetDataSource = new JRResultSetDataSource(resultSet);
JasperRunManager.runReportToPdfFile("c:\\Temp\\classic.jasper","c:\\Temp\\classic.pdf", new  HashMap), resultSetDataSource);

Но когда я подменяю resultSet вот такой конструкцией
Код: plaintext
1.
2.
resultSet = phonesResults.getResultSet(); // здесь я получаю ResultSet из переменной класса phonesResults. 
//phonesResults - это класс в котором храниться resultSet и мне бы не хотелось делать дополнительный 
//запрос к базе данных чтобы этот резултсет вывести в отчет
отчет получается пустым. Я подумал обратиться на форум может кто нить сталкивался с этим и знает в чем проблема.
...
Рейтинг: 0 / 0
Не передается ResultSet в JasperReport
    #34726440
expp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ResultSet или сonnection ужо закрыт?
...
Рейтинг: 0 / 0
Не передается ResultSet в JasperReport
    #34726457
Kha-Ruslan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
exppResultSet или сonnection ужо закрыт?
Ни resultSet, ни connection, ни statement не закрыт, т.е. все открыто.
...
Рейтинг: 0 / 0
Не передается ResultSet в JasperReport
    #34726484
Kha-Ruslan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Складывается впечатление что гдето туплю, но не могу найти где и что не так. В дебагере прошуршал что мог, не нашел.
...
Рейтинг: 0 / 0
Не передается ResultSet в JasperReport
    #34726500
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не верю (с).
resultSet.hasNext()
...
Рейтинг: 0 / 0
Не передается ResultSet в JasperReport
    #34726521
Kha-Ruslan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TimmНе верю (с).
resultSet.hasNext()
debuger>There is no method "hasNext" in class "net.sourceforge.jtds.jdbc.JtdsResultSet"<
...
Рейтинг: 0 / 0
Не передается ResultSet в JasperReport
    #34726549
авторНо когда я подменяю resultSet вот такой конструкцией
Код: plaintext
1.
2.
resultSet = phonesResults.getResultSet(); // здесь я получаю ResultSet из переменной класса phonesResults. 
//phonesResults - это класс в котором храниться resultSet и мне бы не хотелось делать дополнительный 
//запрос к базе данных чтобы этот резултсет вывести в отчет
отчет получается пустым. Я подумал обратиться на форум может кто нить сталкивался с этим и знает в чем проблема.
естественно отчет будет пустым - метод phonesResults.getResultSet() - не возвращает никаких результатов - посмотри внимательно - может быть он просто создает новый resultSet, продебаг свою программу от момента выборки данных до момента передачи их в репорт, если они есть (данные) - проследи где они пропадают
...
Рейтинг: 0 / 0
Не передается ResultSet в JasperReport
    #34726556
Kha-Ruslan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Думаю что знаю в каком направлении работать! По всей вероятности текущая строка является последней и поэтому в отчет не попадают данные. Но это только пока догадка.
Пытался выставить курсор на первую запись компилятор ругнулся авторjava.sql.SQLException: ResultSet may only be accessed in a forward direction.
at net.sourceforge.jtds.jdbc.JtdsResultSet.checkScrollable(JtdsResultSet.java:316)
at net.sourceforge.jtds.jdbc.JtdsResultSet.first(JtdsResultSet.java:528)
at ServletUtilities.NewMain.generateReport(NewMain.java:63)
at ServletUtilities.NewMain.main(NewMain.java:89)
так что мне кажется я в правильном напавлении.
Большое спасибо Timm за это направление, это как раз то над чем я не задумывался.
...
Рейтинг: 0 / 0
Не передается ResultSet в JasperReport
    #34726576
Kha-Ruslan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
изучающий Javaестественно отчет будет пустым - метод phonesResults.getResultSet() - не возвращает никаких результатов - посмотри внимательно - может быть он просто создает новый resultSet, продебаг свою программу от момента выборки данных до момента передачи их в репорт, если они есть (данные) - проследи где они пропадают
Извини, но метод phonesResults.getResultSet() я писал сам и он не возвращает значение null!!!
...
Рейтинг: 0 / 0
Не передается ResultSet в JasperReport
    #34727521
Kha-Ruslan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо за проявленное внимание и помощь в решении проблемы раскрытой в данном топике.
Да, как и предполагалось в процессе решения проблемы, подводный камень оказался тем, что курсор в resultSet находился в конце и resultSet и имел тип
Код: plaintext
ResultSet.TYPE_FORWARD_ONLY
.
После установки resultSet в тип
Код: plaintext
ResultSet.TYPE_SCROLL_SENSITIVE
(есть еще TYPE_SCROLL_INSENSITIVE, но не пробовал) и установки курсора в начало resultSet`а методом resultSet.first() все пошло как положено.

Всем удачи!
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Не передается ResultSet в JasperReport
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]