powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / createOrWaitForConnection при создании коннекта к MQ
5 сообщений из 5, страница 1 из 1
createOrWaitForConnection при создании коннекта к MQ
    #37934255
Tyo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогите плз справиться с бедой.
Из J2EE приложение под WAS7 засылаю сообщения в MQ-очередь. Отсылаются только несколько сообщений (похоже, строго по количеству соединений в моей Queue Connection Factory, как она настроена в WAS), после чего сваливается вот с такой ошибкой.

J2CA0045E: Connection not available while invoking method
createOrWaitForConnection for resource mq/QConnFact


Код ниже. Отмечена строка где возникает ошибка. Подскажите плз, чего не хватает?
Заранее спасибо

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
InitialContext initialContext = new InitialContext();
 queueConnectionFactory = (QueueConnectionFactory)initialContext.lookup(Defaults.MQ_CONNECTION_FACTORY);
 Queue queue =	(Queue)initialContext.lookup(queueRef);
 queueConnection = queueConnectionFactory.createQueueConnection(); // Error Here!
 queueSession = queueConnection.createQueueSession(false,Session.AUTO_ACKNOWLEDGE);
 queueBrowser = queueSession.createBrowser(queue);
 queueSender = queueSession.createSender(queue);
 textMessage = queueSession.createTextMessage();
 textMessage.setText(message);
 queueSender.send(textMessage);
 queueSender.close();
 queueSession.close();
 queueConnection.close();
...
Рейтинг: 0 / 0
createOrWaitForConnection при создании коннекта к MQ
    #37937044
Tyo,

Код точно всегда доходит до queueConnection.close(); ?
Ибо очень похоже на то, что соединения таки не возвращаются в пул.
How to troubleshoot J2CA0045E connection pooling problems

Да, желательно пользоваться более общим интерфейсом ConnectionFactory.
Эта рекомендация из документации:
http://docs.oracle.com/javaee/5/api/javax/jms/QueueConnectionFactory.html QueueConnectionFactory can be used to create a QueueConnection, from which specialized queue-related objects can be created. A more general, and recommended, approach is to use the ConnectionFactory object.
Код по закрытию соединения желательно ставить в блок finally, так, чтобы открытое соединение закрывалось (и возвращалось в пул) всегда, вне зависимости от ошибок/исключений, возникающих по ходу работы логики.

И еще, какой фикспак установлен на WAS? Узнать можно командой versionInfo.
...
Рейтинг: 0 / 0
createOrWaitForConnection при создании коннекта к MQ
    #38013595
Tyo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Евгений Хабаров,

Снова столкнулся с тем же, на нововм уровне )
Впрос -- а можно где-то в Сфере через админ консоль посмотреть сколько MQ-коннекшинов из пула уже занято в данный момент?
...
Рейтинг: 0 / 0
createOrWaitForConnection при создании коннекта к MQ
    #38014558
Tyo,

Можно, через Performance Monitoring Infrastructure (PMI) и в нем Performance Viewer.
Но, вначале в PMI нужно включить сбор статистики, как минимум Base уровня, а уже потом смотреть.

По моему надежнее это смотреть через wsadmin. Какие команды там использовать написано в документе "How to troubleshoot J2CA0045E connection pooling problems", ссылку на который я давал ранее.
...
Рейтинг: 0 / 0
createOrWaitForConnection при создании коннекта к MQ
    #38015481
Tyo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Евгений Хабаров,

Да-да, я уже нашел в указанном Вами траблшутинге, спасибо большое
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / createOrWaitForConnection при создании коннекта к MQ
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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