首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在所有供应商都能工作的persistence.xml的jta-data-source中放入什么?

在所有供应商都能工作的persistence.xml的jta-data-source中放入什么?
EN

Stack Overflow用户
提问于 2017-05-06 00:39:58
回答 2查看 1.7K关注 0票数 0

类似于What to put into jta-data-source of persistence.xml?How to map jpa datasources in WildFly?

然而,我要求的东西将在所有供应商或至少WildFly,Glassfish/Payara,WebSphere应用服务器经典,WebSphere应用服务器自由,TomEE。我并不是在寻找可以在Java SE单元测试中工作的东西。

到目前为止,我发现java:comp/env/jdbc/xxx可以在WebSphere应用服务器和TomEE中工作。有一个映射练习(这是预期的)来让它工作,但我不能让它在GlassFish/Payara和JBoss/WildFly上工作。

更具体地说,我不希望使用默认数据源,因为在我的场景中,我实际上使用的是两个不同的数据源。例如用于参考数据,而另一个用于事务处理。

EN

回答 2

Stack Overflow用户

发布于 2017-05-06 00:50:50

如果您使用的所有应用程序服务器都与JavaEE7兼容,则可以使用默认数据源,根据EE7规范,该数据源可在以下位置获得:

代码语言:javascript
运行
复制
java:comp/DefaultDataSource

因为我对WebSphere自由很熟悉,所以我可以向您介绍有关自由的默认数据源的文档:

Configuring a default data source

如果您使用的是JNDI传统型,那么从v9.0开始,它就支持JavaEE7,并且有一个默认的数据源可用(在规范强制的WebSphere名称下)。

票数 0
EN

Stack Overflow用户

发布于 2017-05-06 06:28:07

如果您希望使用在所有服务器上都有效的相同JNDI名,最好使用资源引用,如What is resource-ref in web.xml used for?中所述

基本上,您可以定义一个任意的JNDI名称(理想情况下不带任何java:comp前缀或类似的名称,类似于"myDatasource"),然后将其映射到由目标server.You提供的具体JNDI名称。如果服务器不能直接使用JNDI (例如GlassFish/Payara的glassfish-web.xml,WildFly的jboss-web.xml,WebSphere经典和自由的ibm-web-bnd.xml ),则需要使用映射为每个服务器定义特定于服务器的描述符。TomEE似乎支持没有任何前缀的引用,所以如果你选择一个没有前缀的名称,它应该能够在没有任何额外映射的情况下进行configure a datasource

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43809960

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档