【发布时间】:2011-03-01 14:31:44
【问题描述】:
我们如何在 JBOSS 4 容器中的 Session EJB(Container Managed Transaction)中定义方法级事务超时?
【问题讨论】:
标签: java transactions jakarta-ee jboss ejb
我们如何在 JBOSS 4 容器中的 Session EJB(Container Managed Transaction)中定义方法级事务超时?
【问题讨论】:
标签: java transactions jakarta-ee jboss ejb
这是JBoss Wiki 的摘录,它明确说明了这一点:
基于每个方法:修改 里面的元素 会话的元素或 实体 bean。这位于 META-INF/jboss.xml 部署 会话 bean 的描述符。当。。。的时候 事务超时指定在 方法级别,它覆盖 默认超时。更多的信息 关于这个元素可以在 jboss-x.x.x/docs/dtd/jboss_4_0.dtd。 来自测试套件的示例:
<?xml version="1.0"?>
<jboss>
<enterprise-beans>
<session>
<ejb-name>TxTimeout</ejb-name>
<jndi-name>jbosstest/tm/TxTimeout</jndi-name>
<exception-on-rollback>true</exception-on-rollback>
<method-attributes>
<method>
<method-name>testOverriddenTimeoutExpires</method-name>
<transaction-timeout>5</transaction-timeout>
</method>
<method>
<method-name>testOverriddenTimeoutDoesNotExpire</method-name>
<transaction-timeout>20</transaction-timeout>
</method>
</method-attributes>
</session>
</enterprise-beans>
</jboss>
【讨论】:
【讨论】: