在Tomee中创建JPA数据源的首选方法

时间:2015-07-02 11:02:28

标签: datasource jpa-2.0 jndi tomee

作为Tomee 2.0的新手,我试图研究如何创建一个数据源,其中可以作为@persistencecontext注入到ejb中。有时候很难弄清楚哪些解决方案已经过时,而且不再有效。但是我找到了使用server.xml的建议(绝对过时;除了可能有globalNamingResources)context.xml,tomee.xml,resources.xml,openejb.xml。有没有人有一个定义数据源的例子,然后使用persistence.xml jta-data-source自动查找。如果它有所不同,我将使用JPA和SQL Server XAdatasource使用容器管理bean。感谢您的任何帮助,您可以提供。

1 个答案:

答案 0 :(得分:1)

也许你应该看一下官方的Tomee网站,它会为你提供一些开箱即用的代码示例。例如,您可以通过EntityManager注入@PersistenceContext的实例,如下所示:

Injection of an EntityManager

如果您想直接使用DataSource,请查看此示例:

Injection of a DataSource

/**
 * The field name "movieDatabase" matches the DataSource we
 * configure in the TestCase via :
 * p.put("movieDatabase", "new://Resource?type=DataSource");
 * <p/>
 * This would also match an equivalent delcaration in an openejb.xml:
 * <Resource id="movieDatabase" type="DataSource"/>
 * <p/>
 * If you'd like the freedom to change the field name without
 * impact on your configuration you can set the "name" attribute
 * of the @Resource annotation to "movieDatabase" instead.
 */
@Resource
private DataSource movieDatabase;

在此示例中 - 如上所示 - 引用了openejb.xml

希望有助于发现缺失的部分。 (欢迎评论)