powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / адская проблема "[CachedConnectionManager] Closing a connection for you"
25 сообщений из 41, страница 1 из 2
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37992856
ViktorWM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
убил уже не один час. ((( Сам не допираю в чем тут дело - очень прошу помочь:

далаю так:

Код: javascript
1.
2.
3.
 Connection conn = null; 
   try
   conn = ((Session) entityManager.getDelegate()).   connection();



проходит, но с вылетанием в конце:
"CachedConnectionManager] Closing a connection for you"

ну и при следующем нажатии кнопки в браузере говорит вестимо:

Код: java
1.
"ERROR [STDERR] java.sql.SQLException: Connection handle has been closed and is unusable"



пробывал закрывать этот ублюдочный коннекшн руками conn.сlose() Не помогло - тоже самое: "Connection handle has been closed and is unusable"

Cамое главное, что понимаю, что проблема где то в окружении: т.е. вызываю эту функцию (которая кстати дергает stored proc в БД) в одном классе (entityList - сгенеренный JBOSS SEAM) - всё великолепно работает! Вызываю ЭТУ ЖЕ САМУЮ ява-функцию (сидящую в беспроблемном классе entityList, она там public!!!) но уже ИЗ СОЗДАННОГО МНОЮ java-класса -> вот такая лажа! Блин!!!!
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37992858
ViktorWM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S.уму не постижимо - почему если сделели методы conn.сlose() и conn.isClosed() почему нельзя было сделать что-то типа conn.open() ?!
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37992862
ViktorWM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
уже и в hibernate пытался настраивать:
hibernate.connection.release_mode=on_close
всё бестолку! ((((
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37992954
GregTk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViktorWM,
Из вашего потока сознания ясно одно, вам нужен

@Resource
DataSource dataSource;


dataSource.getConnection()
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37993391
ViktorWM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GregTk,

cпасибо за ответ, но нет... Не работает!
Откуда источник то брать для этого DataSource? (eclipse мне 3 разных предложил, я выбрал - sun.jdbc.odbc.ee.DataSource; )

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
@Resource
DataSource dataSource; //sun.jdbc.odbc.ee.DataSource;

....

 Connection conn = null; 
 CallableStatement cs = null;
 try { 
    conn =   dataSource.getConnection();
...



ERROR [STDERR] java.lang.NullPointerException

ровно тоже происходит и с import javax.sql.DataSource; :-(
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37993488
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Откуда у вас EM+EMF берут Connection? Вот вам надо брать оттуда же, а не хачить JPA.

Если DataSource имеется в JNDI, то, вероятно, стоит указать имя
http://docs.oracle.com/javaee/6/tutorial/doc/bncjk.html
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37993559
ViktorWM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczОткуда у вас EM+EMF берут Connection? l
Я страшно извиняюсь , но как мне-чайнику это узнать?! Весь seam-проект подключен к оракл-базе через стандартный jdbc драйвер с настройками в соответствующем файле!(или я опять не в попад?)
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37993580
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViktorWMс настройками в соответствующем файле!(или я опять не в попад?)
"Короче всё сделано по документации, че вы все доипались со своими вопросами." В каком файле?
В соответствующем.
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37993637
ViktorWM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczViktorWMс настройками в соответствующе
Ом файле!(или я опять не в попад?)
"Короче всё сделано по документации, че вы все доипались со своими вопросами." В каком файле?
В соответствующем.
Ок, в файле hibernate-console.properties
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37993695
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViktorWMОк, в файле hibernate-console.properties
Тогда два варианта, либо таки создать DataSource в JBoss
https://community.jboss.org/wiki/DataSourceConfigurationInAS7
и поменять конфиг на его использование.
Это нормальная практика, так как проще разворачивать и апдейтить приложение на разных серверах.
Либо опять через какую-то дыру вытаскивать ссылку на ConnectionProvider hibernate.
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37993859
ViktorWM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczViktorWMОк, в файле hibernate-console.properties
Тогда два варианта, либо таки создать DataSource в JBoss
https://community.jboss.org/wiki/DataSourceConfigurationInAS7
и поменять конфиг на его использование.
Это нормальная практика, так как проще разворачивать и апдейтить приложение на разных серверах.
Либо опять через какую-то дыру вытаскивать ссылку на ConnectionProvider hibernate.
Мне кажется это слишком радикальное решение, не проще ли понять почему одна и таже функция в одном моем классе -сгенерренном через seamgen - все работает, а в другом - созданном мною но ОЧЕНЬ похожем - нет?
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37993873
GregTk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViktorWM,

1. Где описанно подключение к базе?
2. Кто рулит транзакциями? сам Seam или JTA?
3. EJB используются или только Seam components?
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37993885
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GregTk1. Где описанно подключение к базе?
Выяснили же. hibernate-console.properties Зачем по два раза спрашивать?
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37993915
GregTk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

У меня есть чувство что на самом деле всё происходит в persistence.xml и в режиме RESOURCE_LOCAL
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37993975
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViktorWMМне кажется это слишком радикальное решение, не проще ли понять почему одна и таже функция в одном моем классе -сгенерренном через seamgen - все работает, а в другом - созданном мною но ОЧЕНЬ похожем - нет?
Когда вы где-то используете свой connection, то JBoss его регистрирует и закрывает, пытаясь пресечь утечку соединений.
Это приводит к тому что EM не может дальше функционировать, потому что вы взяли его соединение и закрыли.

Единственным нормальным решением в этом случае будет получение соединения из инсточника этих самых соединений, а не из EM.
Всё остальное это полумеры и заплатки. Как вариант можете попробовать отключить CachedConnectionManager
https://community.jboss.org/wiki/WhatDoesTheMessageDoYourOwnHousekeepingMean
https://community.jboss.org/thread/168390

Но это радикальное решение сродни отрубанию головы при мигрени.
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37994071
ViktorWM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GregTk,
2. JTA
3. Не знаю, вроде только seam- компоненты... Как сие проверить?
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37994160
GregTk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViktorWM,

persistence.xml в студию!
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37994166
GregTk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViktorWMGregTk,
3. Не знаю, вроде только seam- компоненты... Как сие проверить?

хм... seam компонент это обычный POJO с аннотацией @Name, а ejb будет ещё иметь @Stateless, @Stateful
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37994244
ViktorWM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GregTkViktorWMGregTk,
3. Не знаю, вроде только seam- компоненты... Как сие проверить?

хм... seam компонент это обычный POJO с аннотацией @Name, а ejb будет ещё иметь @Stateless, @Stateful
Ну значит без ejb у меня. Файло выложу вечерком...
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37994726
ViktorWM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GregTk,

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
<?xml version="1.0" encoding="UTF-8"?>
<!-- Persistence deployment descriptor for dev profile -->
<persistence xmlns="http://java.sun.com/xml/ns/persistence" 
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" 
             version="1.0">
             
   <persistence-unit name="medoK" transaction-type="JTA">
      <provider>org.hibernate.ejb.HibernatePersistence</provider>
      <jta-data-source>java:/medoKDatasource</jta-data-source>
      <properties>
         <property name="hibernate.dialect" value="org.hibernate.dialect.OracleDialect"/>
<!--strochka nizhe byla zakommentirovana!!   -->
    <!--        <property name="hibernate.hbm2ddl.auto" value="validate"/>-->
         <property name="hibernate.show_sql" value="true"/>
         <property name="hibernate.format_sql" value="true"/>
         <property name="hibernate.default_schema" value="MEDO"/>
<!--strochka nizhe byla zakommentirovana!!   -->         
<!--            <property name="jboss.entity.manager.factory.jndi.name" value="java:/medoKEntityManagerFactory"/> --> 
         <property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.JBossTransactionManagerLookup"/>  
      </properties>
   </persistence-unit>
    
</persistence>
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37994743
ViktorWM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz Единственным нормальным решением в этом случае будет получение соединения из инсточника этих самых соединений, а не из EM.Всё остальное это полумеры и заплатки.

можно тынц на любой РАБОТАЮЩИЙ пример такого решения?
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37994835
GregTk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViktorWM,

Вот вам ссылка

Посмотрите на вот этот пример там:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
public void myBusinessLegacyStuff() {
   Session session = (Session) getEntityManager().getDelegate();		
   session.doWork(
      new Work() {

         // Hibernate passess the jdbc connection through this Work interface method
         public void execute(Connection conn) throws SQLException {

            // Place here your JDBC sentences
	    CallableStatement stmt = conn.prepareCall("? = call my_stored_proc(?)");
            stmt.registerOutParameter(1, Types.INTEGER);
	    stmt.setInt(2, myInParam);
	    stmt.execute();
	    Integer out = stmt.getInt(1);

            // do something with the result, such as propagating  to enclosing class 

	    stmt.close();					      
	}
      }
  );
}



Это то что вам нужно.
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37995003
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViktorWM <jta-data-source>java:/medoKDatasource</jta-data-source>

Оппа. Вот и имечко для @Resource
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37995007
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViktorWMможно тынц на любой РАБОТАЮЩИЙ пример такого решения?
ЧЕМ предыдущие ТЫНЦЫ не угодили?
http://docs.oracle.com/javaee/6/tutorial/doc/bncjk.html
...
Рейтинг: 0 / 0
адская проблема "[CachedConnectionManager] Closing a connection for you"
    #37995010
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GregTkЭто то что вам нужно.
Он этот connection опять JBoss-у скормит и всё по новой.
...
Рейтинг: 0 / 0
25 сообщений из 41, страница 1 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / адская проблема "[CachedConnectionManager] Closing a connection for you"
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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