Сбой Junit с Embedded Glassfish — адаптер ресурсов JMS должен быть EMBEDDED

Я пытаюсь протестировать сессионный компонент (NetBeans 6.8, Glassfish V3). К сожалению, встроенная стеклянная рыба не может нормально запуститься, так как пытается подключиться к удаленному провайдеру JMS (на локальном хосте: 7676):

$ ant test
...
[junit] Mar 23, 2010 12:13:51 PM com.sun.messaging.jms.ra.ResourceAdapter start
[junit] INFO: MQJMSRA_RA1101: SJSMQ JMS Resource Adapter starting: REMOTE
[junit] Mar 23, 2010 12:13:51 PM com.sun.messaging.jmq.jmsclient.ExceptionHandler throwConnectionException
[junit] WARNING: [C4003]: Error occurred on connection creation [localhost:7676]. - cause: java.net.ConnectException: Connection refused

Ошибка сама по себе верна, так как не запущен ни один (другой) провайдер JMS. Я ожидал, что встроенная стеклянная рыба запустит поставщика JMS в режиме EMBEDDED.

В моем тесте используется javax.ejb.embeddable.EJBContainer :

@BeforeClass
public static void initContainer() throws Exception {
    ec = EJBContainer.createEJBContainer();
    ctx = ec.getContext();
}

Когда я обычно запускаю стеклянную рыбу, все в порядке:

$ bin/asadmin get server.jms-service.type
server.jms-service.type=EMBEDDED

Как я могу заставить свои тесты junit использовать встроенную стеклянную рыбу с EMBEDDED JMS Provider?


person Hank    schedule 23.03.2010    source источник


Ответы (1)


Хорошо, я скачал официальную сборку Glassfish (v3.0.1) с сайта здесь, и теперь JMS Provider EMBEDDED запускается, как и ожидалось.

person Hank    schedule 23.03.2010