powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Glassfish. Проблема с инициализацией ConnectionPool
4 сообщений из 4, страница 1 из 1
Glassfish. Проблема с инициализацией ConnectionPool
    #38075503
SergeyAKa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Крутится два вебсервиса
1. SOAP вебсервиса, которые сгенерирован из wsdl
2. обычный HTTP вебсервиса

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
<%@page contentType="text/xml" pageEncoding="windows-1251"%>
<%
    ru.payments.Service service = new ru.payments.Service(request, response, out);
    
    service.getMessage();


%>



В glassfish настроен пул коннектов.

у обоих сервисов web.xml одинаковый

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
<?xml version="1.0" encoding="UTF-8"?>


<web-app xmlns="http://java.sun.com/xml/ns/javaee"
	 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
	 version="3.0">
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
    

    <resource-ref>
            <description>DB Connection</description>
            <res-ref-name>jdbc/HBConnPool</res-ref-name>
            <res-type>javax.sql.DataSource</res-type>
            <res-auth>Container</res-auth>
    </resource-ref>


</web-app>



Вот тект метода для получения Connection

Код: 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.
/**
 *
 * @author ksa
 */
public class JDBCUtils {
    private static final Logger log = Logger.getLogger(JDBCUtils.class.getName());
    private DataSource dataSource;    
    
    public JDBCUtils(){
        
    }
    
    public void init(String dataSourceName) {
        try {
            InitialContext initContext = new InitialContext();
            dataSource = (DataSource) initContext.lookup(dataSourceName);
        } catch (NamingException e) {
            log.error("JNDIException: " + e.getMessage());
        }
    }
    
    
    public Connection getConnection() throws SQLException {
        if (dataSource == null) {
            throw new SQLException("DataSource is null.");
        }

        return dataSource.getConnection();
    }
    
    
    
}                



Код: css
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.
public class DataAccessFactory {
    
    private static final DataAccessFactory instance = new DataAccessFactory();
    private JDBCUtils jdbcUtil;

    private DataAccessFactory() {
    }

    public static DataAccessFactory getInstance() {
        return instance;
    }

    private JDBCUtils prepareJDBCUtils() {
        if (jdbcUtil == null) {
            jdbcUtil = new JDBCUtils();
            jdbcUtil.init("java:comp/env/jdbc/HBConnPool");
        }

        return jdbcUtil;
    }

    public static synchronized JDBCUtils getJDBCUtils() {
        return getInstance().prepareJDBCUtils();
    }
}


Проблема в том, что сервис 1 (SOAP)спокойно получает connection, другой сервис его получить не может. Т.е. получается, что сервис № 1 каким то образом инициализирует пул, а второй не может .

Что я не так сделал для второго сервиса?

Спасибо
...
Рейтинг: 0 / 0
Glassfish. Проблема с инициализацией ConnectionPool
    #38075528
SergeyAKa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Инструкция как создавать пул взята отседова

http://www.tune-it.ru/web/nicola/main/-/blogs/jdbc-connection-pool-glassfish-oracle
...
Рейтинг: 0 / 0
Glassfish. Проблема с инициализацией ConnectionPool
    #38075549
SergeyAKa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все, разобрались.
Забыл вставить в сервис № 2 строчку инициализации

Код: java
1.
  private static final DataAccessFactory instance = new DataAccessFactory();
...
Рейтинг: 0 / 0
Glassfish. Проблема с инициализацией ConnectionPool
    #38075555
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Там где вы создавали пул в консоли glassfish где-то должны быть и его настройки.
"другой сервис его получить не может" - это в чем выражается? Ошибка какая или зависает, пока первый не освободить connection?
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Glassfish. Проблема с инициализацией ConnectionPool
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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