首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >spring-batch-admin的其他属性文件

spring-batch-admin的其他属性文件
EN

Stack Overflow用户
提问于 2015-02-05 05:18:02
回答 1查看 1.6K关注 0票数 1

我有一个使用spring-batch的web应用程序,现在我正在集成spring-batch-admin来进行基本管理。

问题是作业配置文件(与现有应用程序的配置共享)使用我的应用程序类路径中的文件的属性,但是spring-batch-admin的上下文不能加载它们。

快速的解决方案是覆盖spring-batch-admin中的placeholderProperties bean,只需添加我的属性文件:

代码语言:javascript
复制
<bean id="placeholderProperties" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="locations">
        <list>
            <value>classpath:/org/springframework/batch/admin/bootstrap/batch.properties</value>
            <value>classpath:batch-default.properties</value>
            <value>classpath:batch-${ENVIRONMENT:hsql}.properties</value>
            <value>classpath:/path/to/jobs-config.properties</value> <!-- adding my properties here -->
        </list>
    </property>
    <property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE" />
    <property name="ignoreResourceNotFound" value="true" />
    <property name="ignoreUnresolvablePlaceholders" value="false" />
    <property name="order" value="1" />
</bean>

我不想将我的属性移动到spring-batch-admin的默认文件中。有没有更简单的方法来做这件事?

EN

回答 1

Stack Overflow用户

发布于 2015-02-05 21:41:14

在这里回答我自己的问题...

documentation中所述,放置在META-INF/spring/batch/jobs/*.xml下的每个作业配置文件都由spring-batch-admin作为子上下文加载,并且继承了父上下文(即this默认bean)中的属性占位符,但子上下文始终可以创建自己的占位符bean。

在我的示例中,作业配置文件与现有应用程序共享,并使用应用程序类路径中的属性,因此解决方案是在META-INF/spring/batch/jobs/*.xml中创建一个特定于spring-batch-admin的新作业文件:

代码语言:javascript
复制
<!-- placeholder bean with additional properties for the child context -->
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="locations">
        <list>
            <value>classpath:/path/to/job-config.properties</value>
        </list>
    </property>
    <property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE" />
    <property name="ignoreResourceNotFound" value="true" />
    <property name="ignoreUnresolvablePlaceholders" value="false" />
    <property name="order" value="1" />
</bean>

<!-- external job configuration file is imported -->
<import resource="classpath*:/path/to/job.xml" />
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28331651

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档