属性文件中没有“导入”机制。要解决您的问题,您确实需要将节点特定属性从集群范围的属性中外部化。您设想的通过网络连接的 FS 从所有应用服务器访问相同文件的策略是最简单的解决方案。如果您查看,core-services-context.xml
您会发现以下内容:
<!-- Global properties used in property expansion throughout the container, overridable via JNDI or System properties -->
<bean id="global-properties" class="org.alfresco.config.JndiPropertiesFactoryBean">
<property name="locations">
<list>
<value>classpath:alfresco/repository.properties</value>
<value>classpath:alfresco/domain/transaction.properties</value>
<!-- <value>classpath:alfresco/jndi.properties</value> -->
<!-- Overrides supplied by modules -->
<value>classpath*:alfresco/module/*/alfresco-global.properties</value>
<!-- Installer or user-provided defaults -->
<value>classpath*:alfresco-global.properties</value>
</list>
</property>
<property name="systemPropertiesModeName">
<value>SYSTEM_PROPERTIES_MODE_OVERRIDE</value>
</property>
[...]
</bean>
您可以JndiPropertiesFactoryBean
在自定义 Spring 上下文中声明一个新的,该上下文从方便的共享位置加载属性文件,或者您可以利用模块属性加载机制并确保您alfresco/module/cluster-defaults/alfresco-global.properties
的类路径中指向这样的共享位置。