[英]2PC transactions (cross transactions) in GlassFish 5
有人知道GlassFish 5是否支持在2PC(XA协议)中使用全局事务? 但无需安装其他工具。
我在GlassFish的“ The Open Source Java EE Reference Implementation”页面中查找了信息,我在该页面上下载了应用程序服务器(以及其他页面),但是还没有走运。
我尝试在两个在数据库中插入两个值的微服务中进行事务。 我已使用“ com.mysql.jdbc.jdbc2.optional.MysqlXADataSource”配置了GlassFish的JNDI,它看起来像在工作,但是当我检查数据库时,仅添加了一项服务的值。 (使用2PC的全局事务无效)。 我开始认为GlassFish不支持2PC。
我已经读过它可以用tomcat做到这一点,但是我需要添加atomikos,bitronix等工具。想法是可以不用安装而用glassfish做到这一点。
问候。
有人知道GlassFish 5是否支持在2PC(XA协议)中使用全局事务? 但无需安装其他工具。
Glassfish 5支持使用XA数据源进行事务。 您可以创建一个程序来执行合并多个数据库上的操作的事务。 例如,您可以创建一个对Oracle和IBM DB2数据库执行操作的事务。 如果事务中的一项操作失败,则其他操作(在同一数据库和其他数据库中)将不会执行或回滚。
我尝试在两个在数据库中插入两个值的微服务中进行事务。 我已使用“ com.mysql.jdbc.jdbc2.optional.MysqlXADataSource”配置了GlassFish的JNDI,它看起来像在工作,但是当我检查数据库时,仅添加了一项服务的值。
如果您的程序在事务中调用REST / Web服务,则其他REST / webservice执行的操作不会加入事务。 程序中的错误不会使已经调用的REST / webservice执行的操作回退。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.