从.properties文件读取参数到.xml文件

时间:2013-08-05 08:22:59

标签: xml spring jasper-reports jasperserver

我有一个application.xml文件(directory = WEB-INF / application.xml)

我有一个jasperserver.properties文件(directory = WEB-INF / internal / jasperserver.properties)

这是在jasperserver.properties文件

SERVICE_URL=http://b-reptest-lnx.nwu.ac.za:8026/jasperserver-pro/j_spring_cas_security

我想从application.xml文件中读取“SERVICE_URL”属性

我该怎么做?

2 个答案:

答案 0 :(得分:5)

在application.xml中使用PropertyPlaceholderConfigurer

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
  <property name="location">
    <value>classpath:path/to/jasperserver.properties</value>
  </property>
</bean>

加载属性文件。 然后在application.xml中使用$ {SERVICE_URL}替换值:

<bean class="your class">
  <property name="serviceURL"><value>${SERVICE_URL}</value></property>
</bean>

答案 1 :(得分:1)

我认为你的jasperserver.properties不在你的类路径中。

删除bean定义中value标记中给出的classpath,下面是修改后的

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
  <property name="location">
    <value>/WEB-INF/internal/jasperserver.properties</value>
  </property>
</bean>

然后试试

其他明智的方法是将jasperserver.properties复制到src文件夹并添加下面提到的修改后的bean

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
  <property name="location">
    <value>classpath:jasperserver.properties</value>
  </property>
</bean>

希望它会有所帮助。