Хммм ... так много проблем с размещенным вами фрагментом кода, трудно понять, с чего начать.
Использование WMQInitialContectFactory не похоже на то место, где можно начать с MQ. Это добавляет слой сложности, который вы, вероятно, не хотите на данном этапе. Я бы предложил использовать fscontext от Sun и сохранить управляемые объекты в локальном файле. Исходный контекст, который вы используете, в основном используется для создания общего JNDI-репозитория для многих пользователей или приложений, однако он не поддерживается. Моя проблема в том, что программа сначала должна подключиться к администратору очередей, чтобы получить фабрику соединений, которая ... сообщает программе, как подключиться к QMgr!
Все эти объекты с именем SYSTEM.DEF. * Или SYSTEM.AUTO. * Никогда не должны использоваться для реальных подключений. Это шаблоны, от которых наследуются новые объекты. Если они пригодны для использования, вы не можете защитить их или любые объекты, созданные из них.
Либо фрагмент не завершен, либо вы путаете фабрику соединений с объектом очереди. В сообщении говорится, что вам нужна очередь TESTOUT, но в коде есть только фабрика соединений с очередью, а не пункт назначения или объект очереди.
Если вы установили сервер или клиент WMQ локально, у вас уже есть куча хороших примеров. Расположение по умолчанию для них: C: \ Program Files \ IBM \ WebSphere MQ \ tools \ jms \ samples, и они включают примеры pub / sub и двухточечные. Если вам нужен пример, демонстрирующий создание файла .bindings, ознакомьтесь со статьей и примером кода здесь: http://www.ibm.com/developerworks/websphere/techjournal/0610_woolf/0610_woolf.html В статье объясняются некоторые проблемы, которые я только что упомянул, с каналами, безопасностью клиента и т. Д.