对于我的JEE 3.1应用程序,我有一个SFSB,我为其设置了一个特定的超时。我需要能够轻松访问此值,以便轻松配置。
首先我在SFSB课程中有注释:
@StatefulTimeout(value = 2, unit = TimeUnit.HOURS)
这可以按预期工作。但我需要这个值(很容易)可配置。因此,我删除了注释并将以下xml放在我的ejb-jar.xml中。这再次按预期工作。
<session>
<ejb-name>MyStatefulSessionBeanName</ejb-name>
<ejb-class>foo.bar.MyStatefulSessionBean</ejb-class>
<session-type>Stateful</session-type>
<stateful-timeout>
<timeout>2</timeout>
<unit>Hours</unit>
</stateful-timeout>
</session>
但是ejb-jar.xml打包在.jar中,该.jar位于我的.ear应用程序部署中。因此我的问题是,这个设置可以放在jboss的standalone.xml文件中吗?
答案 0 :(得分:2)
没有应用程序重启,没有简单的方法可以做到这一点。
如果可以,那么您可以在standalone.xml中定义系统属性。我建议使用CLI或管理控制台来实现此目的。
然后,您可以在ejb-jar.xml中使用属性值:
<stateful-timeout>
<timeout>${my.session.timeout.value}</timeout>
<unit>${my.session.timeout.units}</unit>
</stateful-timeout>
然后可以通过Web控制台或CLI更新属性值,并重新启动应用程序。