powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / org.firebirdsql.jdbc.FBSQLException: Result set is already closed
25 сообщений из 65, страница 1 из 3
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229927
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот такие ошибки в рандомное время возникают в web приложении (причем не у меня, а вижу в логах при работе пользователей)

org.firebirdsql.jdbc.FBSQLException: Result set is already closed.
org.firebirdsql.jdbc.FBSQLException: The result set is closed

одна после другой иногда возникают во время построения таблицы на основе запроса к базе (т.е. наверное можно сказать, что отрисовка в html происходит "продолжительное" время)

все подобное "рисование" выполняю следующим образом - создаю коннект, statement, resultset, "рисую" (через while (resultset.next()) ), по окончании закрываю вообще все

может идеологически это неверно и несколько одновременных запросов страницы приводят к тому, что тот что отрисовался раньше закрывает первый!?

просто не могу понять почему такое происходит, в самой "отрисовке" только один единственный набор объектов, включая resultset
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229929
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wolverinпо окончании закрываю вообще все
Пул используется?
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229933
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

а что дает? мне не требуется держать несколько соединений - нарисовал, закрыл, отключился
но как то получается что конкурирующие потоки взаимодействуют...
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229935
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
т.е. мне казалось что в session я имею дело с отдельно созданным resultset
даже как это проверить не пойму, потому как на деле отрисовка конечно же выполняется быстро, но когда работает куча пользователей нет нет да выскочит вот эта беда
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229937
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczПул используется?
) нет!
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229940
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wolverinа что дает?

В web приложении-то? Это даёт всё. В том числе валидацию соединений.

wolverinно как то получается что конкурирующие потоки взаимодействуют...
На основе чего сделан такой вывод?
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229941
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wolverinт.е. мне казалось что в session я имею дело с отдельно созданным resultset
Session здесь вообще при чем?
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229942
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wolverin,

Ошибка вылетает в момент первого использования ResultSet (в начале цикла) или в середине, уже после того как несколько записей вычитано?
Закрываете руками или через AutoClosable? Stacktrace почему не привели?
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229943
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот как конкретно выглядит текст

но конкретно ВСЕГДА эта строка, а по ней вообще комментарий в теле цикла
at org.apache.jsp.ИМЯ-СТРАНИЦЫ-С-ОШИБКОЙ_jsp._jspService(ИМЯ-СТРАНИЦЫ-С-ОШИБКОЙ_jsp.java from :77)

Код: 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.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
[#|2016-05-05T09:34:52.263+0600|SEVERE|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=28;_ThreadName=Thread-2;|org.firebirdsql.jdbc.FBSQLException: Result set is already closed.
        at org.firebirdsql.jdbc.FBStatementFetcher.checkClosed(FBStatementFetcher.java:232)
        at org.firebirdsql.jdbc.FBStatementFetcher.fetch(FBStatementFetcher.java:187)
        at org.firebirdsql.jdbc.FBStatementFetcher.next(FBStatementFetcher.java:137)
        at org.firebirdsql.jdbc.AbstractResultSet.next(AbstractResultSet.java:250)
        at org.apache.jsp.ИМЯ-СТРАНИЦЫ-С-ОШИБКОЙ_jsp._jspService(ИМЯ-СТРАНИЦЫ-С-ОШИБКОЙ_jsp.java from :77)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:111)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:770)
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:473)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:377)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:770)
        at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1550)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
        at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:331)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
        at com.sun.enterprise.v3.services.impl.ContainerMapper$AdapterCallable.call(ContainerMapper.java:317)
        at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195)
        at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:860)
        at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:757)
        at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1056)
        at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:229)
        at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
        at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
        at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
        at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
        at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
        at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
        at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
        at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
        at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
        at java.lang.Thread.run(Thread.java:662)
|#]

[#|2016-05-05T09:34:52.278+0600|SEVERE|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=19;_ThreadName=Thread-2;|org.firebirdsql.jdbc.FBSQLException: The result set is closed
        at org.firebirdsql.jdbc.AbstractResultSet.checkCursorMove(AbstractResultSet.java:217)
        at org.firebirdsql.jdbc.AbstractResultSet.next(AbstractResultSet.java:249)
        at org.apache.jsp.ИМЯ-СТРАНИЦЫ-С-ОШИБКОЙ_jsp._jspService(ИМЯ-СТРАНИЦЫ-С-ОШИБКОЙ_jsp.java from :77)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:111)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:770)
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:473)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:377)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:770)
        at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1550)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:217)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
        at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:331)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
        at com.sun.enterprise.v3.services.impl.ContainerMapper$AdapterCallable.call(ContainerMapper.java:317)
        at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195)
        at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:860)
        at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:757)
        at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1056)
        at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:229)
        at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
        at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
        at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
        at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
        at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
        at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
        at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
        at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
        at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
        at java.lang.Thread.run(Thread.java:662)
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229947
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowiczwolverin,

Ошибка вылетает в момент первого использования ResultSet (в начале цикла) или в середине, уже после того как несколько записей вычитано?
Закрываете руками или через AutoClosable? Stacktrace почему не привели?
получается приблизительно в середине, после вычитки нескольких записей, закрываю руками после выхода из цикла
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229958
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczSession здесь вообще при чем?
поскольку новичок - делаю безумные предположения (
а вообще через переменные session "обмениваюсь" между jsp объектами, но открытие и закрытие только в пределах "цикла"
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229961
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wolverinно открытие и закрытие только в пределах "цикла"
дай псевдо код условный. И где он расположен.
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229962
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123дай псевдо код условный. И где он расположен.

вот так немного упрощенно если

Код: 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.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
                DataSetD dsd = (DataSetD)session.getAttribute("dataset");
                if (dsd.getDolgDetail(l_schet, dBeg, dEnd)) {
                    float summa = 0, summa_opl = 0, sum = 0, sum_opl = 0;
                    GregorianCalendar data = new GregorianCalendar();
                    int year = data.get(GregorianCalendar.YEAR);
                    int year_old = year;
                    int year_first = year;
                    SimpleDateFormat sdf = new SimpleDateFormat("dd.MM.yyyy");

                    try {
                        while (dsd.rs.next()) {
                            data.setTime(dsd.rs.getDate("datedoc"));
                            year = data.get(GregorianCalendar.YEAR);
                            if (year != year_old) {
                                %><tr align="center">
                                    <td><B>Итого</B></td>
                                    <td></td>
                                    <td><B><%= sum %></B></td>
                                    <td><B><%= sum_opl %></B></td>
                                </tr><%
                                sum = 0;
                                sum_opl = 0;
                                year_old = year;
                            }
                            sum += dsd.rs.getFloat("summa");
                            %><tr>
                                <td><%= dsd.rs.getString("tarif_group") %></td>
                                <td align="center"><%= sdf.format(dsd.rs.getDate("datedoc")) %></td>
                                <%--<td align="right"><%if(rs.getString("summa") != null) %><%=rs.getFloat("summa")%></td>
-------------------НОМЕР СТРОКИ ПОЧЕМУ ТО ВОТ ЗДЕСЬ^^^^^^^^^^^^^^^^^-------------------
                                <td align="right"><%if(rs.getString("summa_opl") != null) %><%=rs.getFloat("summa_opl")%></td>--%>
                                <td align="right"><%= dsd.rs.getFloat("summa") %></td>
                                <td align="right"><%= dsd.rs.getFloat("summa_opl") %></td>
                            </tr><%
                        }
                        //dds.rs.close();
                        if (year != year_first) {
                            %><tr align="center">
                                <td><B>Итого</B></td>
                                <td></td>
                                <td><B><%= sum %></B></td>
                                <td><B><%= sum_opl %></B></td>
                            </tr> <%
                        }
                        %><tr align="center">
                            <td><B>Всего</B></td>
                            <td></td>
                            <td><B><%= summa %></B></td>
                            <td><B><%= summa_opl %></B></td>
                        </tr><%
                        //session.setAttribute("AccessId", 3);
                    } catch (Exception e) {
                        e.printStackTrace();
                        %><p>Ошибка операции</p><%
                    }
                }
                else { %><p>Соединение не установлено</p><% }
                dsd.Disconnect();
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229964
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сам дисконект
Код: 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.
32.
33.
    public void Disconnect() {
        try {
            if (rs != null) {
                if (!rs.isClosed()) rs.close();
                rs = null;
            }
        }
        catch (SQLException e) {
            e.printStackTrace();
        }

        try {
            if (s != null) {
                if (!s.isClosed()) s.close();
                s = null;
            }
        }
        catch (SQLException e) {
            e.printStackTrace();
        }

        try {
            if (c != null) {
                //c.rollback();
                if (!AutoCommit) c.commit();
                if (!c.isClosed()) c.close();
                c = null;
            }
        }
        catch (SQLException e) {
            e.printStackTrace();
        }
    }
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229977
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wolverin
Код: java
1.
 DataSetD dsd = (DataSetD)session.getAttribute("dataset");


AFAIK DataSet не потокобезопасный объект. В сессию нельзя.
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229985
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123AFAIK DataSet не потокобезопасный объект. В сессию нельзя.
формально конечно DataSetD dsd не сам dataset, а просто обертка с инициализированными параметрами для соединения, сами объекты в проблемном jsp создаются и конектятся в dsd.getDolgDetail
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229989
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wolverin,
какая разница. В одном потоке ты создал, во втором прибил. А ссылки и работающий JSP в другом.
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229993
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wolverin,
грубо, JSP это VIEW.
При загрузке открой коннект и прибей после отрисовки.
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229994
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123,

хотя конечно объявлено как public class DataSetD extends DataSet

и как тогда нужно делать?
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229996
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123При загрузке открой коннект и прибей после отрисовки.
так он и прибевается после отрисовки и создается перед ней
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39229999
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wolverinи как тогда нужно делать?
1.
При загрузке открой коннект и прибей после отрисовки.
2. бины
3. пул
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39230003
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wolverinтак он и прибевается после отрисовки и создается перед нейпо коду не видно. Эта часть у тебя спрятана.
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39230004
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как теперь это все развидеть-то? Просто слов нет. Энтузиазма много и только.

ResultSet не место в Session. Разве только если использовать какой-нибудь WebRowSet, отсоединенный от базы.
То что объект находится в Session никак не защищает от конкурентного доступа. Один пользователь может открыть две странцы в одной сессии. Это скорее всего и является причиной ошибки.

JSP надо использовать в виде HTML шаблона, а не в миксуя Java и HTML в безобразную кашу двух языков (а если ещё и JavaScript добавить?).
Если так кортит использовать JDBC прямо в странице, то есть же SQL в JSTL
http://www.tutorialspoint.com/jsp/jstl_sql_query_tag.htm

Ресурсы надо закрывать в блоке finally, а не в if..else

Срочно к изучению
JSP JSTL
JSP Expression Language
Model View Controller
finally
AutoCloseable (try with resource)
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39230009
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123wolverinтак он и прибевается после отрисовки и создается перед нейпо коду не видно. Эта часть у тебя спрятана.
тут создаю
if (dsd.getDolgDetail(l_schet, dBeg, dEnd))

тут убиваю
dsd.Disconnect();

конкретно

Код: 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.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
    public boolean getDolgDetail(String l_schet, String dBeg, String dEnd) {

        return getOpen("select ");
    }


    public boolean getOpen(String sql) {

        boolean res = false;

        if (rs == null) {
            if (Connect())
                res = Open(sql) != null;
        }
        else res = Open(sql) != null;

        return res;
    }


    public ResultSet Open(String sql) {

        try {
            if (rs != null)
                if (!rs.isClosed()) rs.close();
        }
        catch (SQLException e) {
            e.printStackTrace();
        }
        finally {
            rs = null;
        }

        try {
            if (s != null) rs = s.executeQuery(sql);
        }
        catch (SQLException e) {
            e.printStackTrace();
        }

        return rs;
    }
...
Рейтинг: 0 / 0
org.firebirdsql.jdbc.FBSQLException: Result set is already closed
    #39230013
Фотография wolverin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а ну и сам коннект
Код: 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.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
    public boolean Connect(){

        try {
            Class.forName("org.firebirdsql.jdbc.FBDriver");
        }
        catch (ClassNotFoundException e) {
            e.printStackTrace();
            //System.out.println("Firebird JCA-JDBC driver not found in class path");
            return false;
        }

        Driver d = null;
        try {
            d = DriverManager.getDriver(database);
        }
        catch (SQLException e) {
            e.printStackTrace();
            //System.out.println ("Unable to find Firebird JCA-JDBC driver among the registered drivers.");
            return false;
        }

        c = null;
        try {
            Properties prop = new Properties ();
            prop.put("user", user);
            prop.put("password", password);
            prop.put("lc_ctype", "WIN1251");

            c = d.connect(database, prop);
            c.setAutoCommit(AutoCommit);
        }
        catch (SQLException e) {
            e.printStackTrace();
            return false;
        }

        try {
            s = c.createStatement(resultSetType, resultSetConcurrency);
        }
        catch (SQLException e) {
            e.printStackTrace();
            return false;
        }

        return true;
    }
...
Рейтинг: 0 / 0
25 сообщений из 65, страница 1 из 3
Форумы / Java [игнор отключен] [закрыт для гостей] / org.firebirdsql.jdbc.FBSQLException: Result set is already closed
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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