【问题标题】:JBoss-AS7 @TransactionTimeout: Missing Maven dependencyJBoss-AS7 @TransactionTimeout:缺少 Maven 依赖项
【发布时间】:2013-01-23 07:44:09
【问题描述】:

我正在使用 JBoss AS 7.1.1.Final "Brontes" 并在 @Stateless-Bean 中遇到一个长时间运行的方法调用 5分钟后取消:

[com.arjuna.ats.arjuna] (Transaction Reaper) ARJUNA012117:
                        TransactionReaper::check timeout

搜索这个问题,我找到了一些答案Jboss 7.1 ejb 2.1 custom transaction timeout configuration 和wikis JBoss-AS7 reference guideJBoss Wiki

答案似乎很简单:用@TransactionTimeout注释方法 但是:这个类在我的类路径中不可用! 我有一个 EAR 结构的 Maven 项目,ejb 模块具有以下相关依赖项,我在几个大量使用 EJB3 的项目中使用了这些依赖项:

  • org.jboss.spec.javax.ejb:jboss-ejb-api_3.1_spec(提供)
  • javax.enterprise:cdi-api(提供)
  • org.hibernate.javax.persistence:hibernate-jpa-2.0-api(提供)
  • org.hibernate:hibernate-validator(提供)

缺少哪个依赖项?

【问题讨论】:

    标签: java maven transactions jboss7.x


    【解决方案1】:

    试试这个;花了一些非常认真的搜索才发现它,但它似乎应该可以工作:

    <dependency>
        <groupId>org.jboss.ejb3</groupId>
        <artifactId>jboss-ejb3-ext-api</artifactId>
        <version>2.0.0</version>
        <scope>provided</scope>
    </dependency>
    

    GitHub:

    我认为 Petr 找到的那个是较旧的(最初用于 JBoss 4.2.x);正如 Thor 提到的,它不包含 unit 参数,并且可能不适用于 AS7。

    对更新JBAS7 EJB reference guide的人的一个谦虚建议;也许可以包括 @TransactionTimeout 的 Maven 详细信息?

    【讨论】:

      【解决方案2】:

      你试过了吗

      jboss-annotations-ejb3
      

      它应该适用于这个

      【讨论】:

      • 我很确定这是否是 jboss:jboss-annotations-ejb3:4.2.3.GA 中的正确课程 (org.jboss.annotation.ejb.TransactionTimeout)。 @TransactionTimeout(value=1)没有任何效果(仍然超时5分钟),并且描述的参数unit也不可用。
      • stackoverflow.com/questions/2184844/… - 在transaction-jboss-beans.xml 中尝试此设置,看看它是否有效。
      猜你喜欢
      • 1970-01-01
      • 2019-04-09
      • 2014-06-10
      • 2012-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-14
      相关资源
      最近更新 更多