我正在查看两个xml文件,它们定义了一个使用org.jboss.varia.property.SystemPropertiesService的mbean。一个是properties-service.xml,直接存在于deploy目录中,另一个位于我的应用程序的内部 - 让我们称之为myapp-properties-service.xml。
这意味着可以定义两个属性 - 一个URLList,它可以获取./conf/props/myapp.properties形式的属性,一个Properties属性直接获取属性(例如myproperty = myvalue)。
问题在于,虽然两个文件中的两个属性在启动时都将属性加载到系统属性中,但当我在JBoss运行时进行更改时,行为会有所不同。
properties-service.xml 中的Properties属性重新加载属性。 URRList 失败重新加载属性,myapp-properties-service.xml 中的两个属性都失败重新加载。
我错误地认为所有四个案例都应该重新加载属性?我理想的解决方案是提供myapp-properties-service.xml的URL。
有什么建议吗?感谢。
答案 0 :(得分:1)
只有在更改* -service.xml文件时才会重新加载它们。更改它引用的文件是不够的。您只需触摸* -service.xml即可。我怀疑它不会自动检测更改的原因是因为此列表可以包含URL,并且您希望它在更改这些文件时如何知道。更改文件中定义的属性是有效的,因为您修改了由JBoss监视的* -service.xml文件本身。