jta

    0热度

    1回答

    在我们的一个定时器ejb中,我们调用了jboss 6中的2个非xa数据源,并且出现以下错误。 [org.hibernate.util.JDBCExceptionReporter](HTTP-0.0.0.0-443-4)在事务不能招募进入元知晓对象上;! - 嵌套的throwable:(javax.transaction.SystemException:java.lang.Throwable:无法登

    1热度

    1回答

    在Java EE上下文中,特别是在CDI ApplicationScoped对象中,我需要强制回滚容器管理的事务。 (这是JPA(trans-)动作和一些文件系统动作的组合,后者并不是真正的事务性处理,所以我必须手动做一些事情) 我之前可以使用SessionContext,但注入一些框架(WildFly 8.1.0中的Weld CDI)不会将我的ApplicationScoped对象标记为会话或消

    0热度

    1回答

    我需要在核心Java应用程序(不是web)中使用JTA XA资源和MySQL,而不使用任何框架。所有的文章和例子都显示了使用单一数据源的提交。虽然我已经完成了两个数据库的分布式事务,但是我在使用XA资源的'两阶段提交'中怀疑/查询。我的代码是: public static void main(String[] args) { DataSource dataSourceRemote = C

    1热度

    1回答

    我与连接到利用UserTransaction & session-factory设置在连接到数据源休眠配置的Teradata数据库的Tomcat应用服务器上运行的Java程序的工作创建资源实例 <hibernate-configuration> <session-factory> <property name="show_sql">true</property>

    0热度

    1回答

    我一直在网上搜索,但找不到在不同数据库中进行两阶段提交以及在故障情况下进行恢复的实际示例。 任何人都可以在两个不同的数据库中给出两阶段落实的例子,以及在失败情况下恢复如何发生,例如由于数据库服务在发送完成之后关闭了事务而导致事务失败,准备响应以及其他数据库查询成功执行。

    2热度

    1回答

    我有一个直接使用Java Transaction API资源的hibernate应用程序。我试图使用的UserTransaction来完成一些基本的数据库事务 UserTransaction接口定义了允许 应用程序明确地管理事务边界 在hibernate.cfg.xml文件我也有方法以下属性: <session-factory> <property name="show_sql">tru

    2热度

    1回答

    我正在使用WebSphere 8.5与EJB 3.1和JMS通用提供程序。 我需要使用无状态会话bean作为生产者在队列中编写消息。 EJB由TransactionAttributeType.REQUIRED注解,因为在我发送队列中的消息之前需要执行一些“DB插入”,并使用这些消息读取由制作者编写的记录。 问题是如果我定义一个JDBC非XA数据源,生产者将消息写入队列,但服务器抱怨本地资源(数据源

    0热度

    1回答

    我有一个在Eclipse中定义的非常基本的Java EE应用程序(一个EJB,一个带有PrimeFaces的网页,一个JPA实体)。它有四个项目,一个用于EAR,一个用于EJB,一个用于JPA,另一个用于Web部件。问题是我试图在JPA项目中将Hibernate配置为persistence.xml中的持久性框架,并且它并不像我所期望的那样完全工作。在我的EJB(@Stateless)中,我可以通过

    1热度

    1回答

    在下面的类中,两个方法都返回相同的对象。 但是,从第一个返回的对象列表被管理,因为它是交易的一部分,而不是第二个不是交易的一部分? public class QueryServiceImpl implements QueryService { @PersistenceContext(unitName="PC") EntityManager em; //default

    0热度

    1回答

    我将事务超时设置为10秒。交易超时。 它会抛出任何异常吗? (休眠) try { session.getTransaction.setTimeout(10); session.getTransaction().begin(); session.persists(something); session.getTransaction().commit(); } catch(Transacti