/ / Čo vložiť do jta-data-source of persistence.xml, ktorý funguje u všetkých predajcov? - jpa, ryba, websféra

Čo treba vložiť do jta-data-source persistence.xml, ktorý funguje na všetkých dodávateľoch? jpa, glassfish, websphere

Podobný Čo do jta-data-source of persistence.xml? a Ako mapovať zdroje údajov JPEG vo WildFly?

Žiadam však niečo, čo by bolopracovať na všetkých predajcoch alebo aspoň na divočine WildFly, Glassfish / Payara, WebSphere Application Server classic, WebSphere Application Server Liberty, TomEE. Nehľadám niečo, čo by fungovalo pri teste Java SE Unit.

Zatiaľ som to zistil java:comp/env/jdbc/xxx funguje na serveroch WebSphere Application Server a TomEE. Je to mapovacie cvičenie (ktoré sa očakáva), aby to fungovalo, ale nemôžem dostať to isté, aby som pracoval na GlassFish / Payara a JBoss / WildFly.

Konkrétne nechcem používať predvolený zdroj údajov, pretože pre môj scenár v skutočnosti pracujem na dvoch rôznych zdrojoch údajov. Napr. pre referenčné údaje a ďalšie pre transakčné.

odpovede:

0 pre odpoveď č. 1

Ak sú všetky aplikačné servery, s ktorými pracujete, kompatibilné s Java EE 7, môžete použiť predvolený zdroj údajov, ktorý sa vyžaduje podľa špecifikácie EE7, aby bol k dispozícii na adrese:

java:comp/DefaultDataSource

Aplikačný server, na ktorom pracujete, by vám mal umožniť prispôsobiť konfiguráciu zdroja DefaultDataSource.

Keďže som oboznámený s produktom WebSphere Liberty, môžem vás v tomto dokumente upozorniť na predvolené zdroje údajov v službe Liberty:
Konfigurácia predvoleného zdroja údajov

Ak používate WebSphere traditional, od verzie v9.0 podporuje Javu EE 7 a má k dispozícii predvolený zdroj údajov z poľa (pod špecifikovaným názvom JNDI).


0 pre odpoveď č. 2

Ak chcete použiť rovnaký názov JNDI, ktorý funguje na všetkých serveroch, je najlepšie použiť odkazy na zdroje, ako je vysvetlené v Na čo sa v web.xml používa refinančné zdroje?

V podstate by ste definovali ľubovoľný názov JNDI (ideálne bez neho) java:comp predpona alebo podobné, len niečo podobné„myDatasource“) a potom ich namapujte na konkrétny názov JNDI poskytovaný cieľovým serverom. Museli by ste definovať deskriptor špecifický pre server pre každý server s mapovaním, ak server nemôže priamo použiť JNDI (napr. glassfish-web. xml pre GlassFish / Payara, jboss-web.xml pre WildFly, ibm-web-bnd.xml pre WebSphere Classic a Liberty). Zdá sa, že TomEE podporuje odkazy bez akejkoľvek predpony, takže by mal byť schopný nakonfigurovať zdroj údajov bez dodatočného mapovania, ak vyberiete meno bez predpony.