我想从JPA迁移到JTA并使用bitronix事务管理器。尝试运行单元测试时遇到错误消息。根据Bitronix的文档,这是正常的B/C我的春天上下文配置试图加载资源两次(一次在基类,然后在测试类,见下面的代码),我已经尝试与atomikos相同,我得到了类似的结果。bitronix交易管理器
产生的原因: java.lang.IllegalArgumentException异常: 资源与uniqueName 'xyzDb' 已经注册
我的基类
@ContextConfiguration(locations = {"classpath:com/xyz/baseContext.xml"})
@Transactional
public abstract class AbstractTestSupport extends Assert implements ApplicationContextAware
{
在一些单元测试我有扩展测试支持并添加如下所示的上下文配置文件。所以它的基类,其他时间的子类加载背景一次失败
儿童类
@ContextConfiguration(locations = {"classpath:com/xyz/testContext.xml"})
public class UnitTest extends AbstractTestSupport
{
试验结束后,我关闭背景下,所以接下来的测试工作正常,只要它不”用另一个上下文配置文件扩展基类。
@AfterClass
public static void onTearDownAfterClass() throws Exception
{
applicationContext.shutdownApplicationContext();
assertFalse("Spring application context is still active after shutdown. ", applicationContext.isActive());
}
我想保持不同情境下的配置文件中的子类,使这项工作那样,任何想法不胜感激....
这两个XML文件是什么? – skaffman 2011-02-18 22:25:25