我写一个单元测试用于这最终将消息放入到队列中的活动。只要将消息放入该队列,消息驱动的bean就开始处理。但我不想在单元测试中测试MDB。我如何告诉OpenEJB忽略它们?给OpenEJB的忽略MDB
我成立了OpenEJB的几个特性:
p.setProperty(Context.INITIAL_CONTEXT_FACTORY,
"org.apache.openejb.client.LocalInitialContextFactory");
p.setProperty("openejb.deployments.classpath.include", ".*");
p.setProperty("openejb.localcopy", "false");
// Messaging
p.put("MyJmsResourceAdapter",
"new://Resource?type=ActiveMQResourceAdapter");
// Do not start the ActiveMQ broker
p.put("MyJmsResourceAdapter.BrokerXmlConfig", "");
p.put("MyJmsConnectionFactory",
"new://Resource?type=javax.jms.ConnectionFactory");
p.put("MyJmsConnectionFactory.ResourceAdapter", "MyJmsResourceAdapter");
p.put("queue/MyQueue",
"new://Resource?type=javax.jms.Queue");
我知道我必须设置openejb.deployments.classpath.exclude
,但我无法找出正确的值:
p.setProperty("openejb.deployments.classpath.exclude", "org.example.mdb.*");
比如我班被命名为org.example.mdb.MyMDB
。
这属性没有在classpath中过滤个人类,但实际的类路径本身。即罐子和目录成为部署的“模块”。我们绝对需要一个类似的功能来包含/排除个别课程。会非常有用。 – 2011-03-20 03:54:42