先前的项目采用的是TyrexFactory作为事务工厂的实现,但是运行的过程中发现很不稳定,处理大对象时容易出现事务超时的错误,即使事务设置的超时时间很长也是这样,将jotm及其相关jar copy 到lib中之后,换成JotmFactory,发现TransactionFactory.getTransactionFactory竟然报NoSuchElementException。后来发现是carol.jar中的CarolConfiguration需要装载jndi.properties文件进行初始化,而tyrex.jar自身有一个同名的文件,正是因为CoralConfiguration装载了这个同名的文件才产生了异常,去掉tyrex.jar就可以了。