我正在尝试测试会话bean(NetBeans 6.8,Glassfish V3)。不幸的是,嵌入式glassfish无法正常启动,因为它尝试连接到远程JMS提供程序(在localhost: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提供程序正在运行。我期待嵌入式glassfish以EMBEDDED模式启动JMS提供程序。
我的测试使用javax.ejb.embeddable.EJBContainer:
@BeforeClass
public static void initContainer() throws Exception {
ec = EJBContainer.createEJBContainer();
ctx = ec.getContext();
}
当我正常启动glassfish时,没关系:
$ bin/asadmin get server.jms-service.type
server.jms-service.type=EMBEDDED
如何让我的junit测试使用带有EMBEDDED JMS提供程序的嵌入式glassfish?