8

現在、Web アプリケーションを jboss 5.1 から jboss 7.1.1.Final にアップグレードしようとしています。

jboss.xml で、次のようなカスタム ejb タイムアウトを設定しました。

     <session>
        <ejb-name>MSServiceEJB</ejb-name>
        <jndi-name>ejb/MSServiceEJB</jndi-name>
        <local-jndi-name>ejb/LocalMSServiceEJB</local-jndi-name>
        <method-attributes>
            <method>
                <method-name>*</method-name>
                <transaction-timeout>3600</transaction-timeout>
            </method>
        </method-attributes>
    </session>

jboss 7 は jboss.xml を無視します。ejb 2.1 のトランザクション タイムアウトはどこで指定できますか?

4

2 に答える 2

7

あたり

ソース

jboss.xml デプロイメント記述子ファイルを置き換えます

jboss-ejb3.xml デプロイメント記述子は、jboss.xml デプロイメント記述子を置き換えて、Java Enterprise Edition (EE) 定義の ejb3-jar.xml デプロイメント記述子によって提供される機能をオーバーライドおよび追加します。新しいファイルは jboss.xml と互換性がなく、jboss.xml はデプロイメントで無視されるようになりました。

を作成し、jboss-ejb3.xmlその中に構成を配置する必要があります。

次のようになります。

<assembly-descriptor>
    <container-transaction>
        <method>
            <ejb-name>EJBName</ejb-name>
            <method-name>methodName</method-name>
            <method-intf>Local</method-intf>
        </method>
        <tx:trans-timeout>
            <tx:timeout>500</tx:timeout>
            <tx:unit>Seconds</tx:unit>
        </tx:trans-timeout>
    </container-transaction>
</assembly-descriptor>

を使用しEJB2.xているので、で構成する方が賢明です。ejb-jar.xml

で作成する必要がありますMETA-INF of the EJB jar

于 2012-11-17T14:56:32.180 に答える
3

@TransactionTimeOut アノテーションで Bean メソッドに指定できます。

@TransactionTimeout(value = 10, unit = TimeUnit.SECONDS)

詳しい設定方法はこちら

マディ

于 2012-10-23T10:48:02.450 に答える