1

.java ファイルでは、「getProperty(PARAMETER_NAME)」を使用できます。

パラメータの値を取得するには

このコードブロックは .xml にあります

<bean class="org.springframework.security.ui.cas.ServiceProperties"
          id="authenticationServiceProperties">
        <property name="service">
            <value>http://v-repte-lnx.nwc.ac.za:8024/jasperserver-pro/j_spring_cas_security_check</value>
        </property>
        <property name="sendRenew">
            <value>false</value>
        </property>
</bean>

私がしたいのは、リンク(4行目)をハードコーディングしないことです

したがって、4行目は次のようになります

<value>getProperty(PARAMETER_NAME)</value>

これを実現するために、この .xml ファイルで何を使用できますか?

追加:

JasperReports Server 5.0.1を使用しています

私のツリーはこのように見えます

Webap>
  applicationContext-security.xml
  internal>
      jasperreports.properties

編集:

user2550754 のソリューションを実装しましたが、機能しません

user2550754 の投稿のコメントを参照してください

今すぐファイルを更新:

applicationContext-security.xml ファイル

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

<bean class="org.springframework.security.ui.cas.ServiceProperties"
          id="authenticationServiceProperties">
        <property name="service">
            <value>${SERVICE_URL}</value>
        </property>
        <property name="sendRenew">
            <value>false</value>
        </property>
</bean>

jasperserver-pro.properties ファイル

SERVICE_URL=http://b-reptes-lnx1.nuw.ac.za:8024/jasperserver-pro/j_spring_cas_security_check
4

3 に答える 3

2

Spring の最新バージョンでは、名前空間のpropertiesタグを使用して 1 行でプロパティをロードできます。util

<?xml version="1.0" encoding="UTF-8"?>  
<beans xmlns="http://www.springframework.org/schema/beans"   
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xmlns:util="http://www.springframework.org/schema/util"  
    xsi:schemaLocation="  
        http://www.springframework.org/schema/beans   
        http://www.springframework.org/schema/beans/spring-beans-3.0.xsd  
        http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd"> 

    <util:properties id="appProps" location="classpath:app.properties" />

${key}xml ファイルの構文を使用してそれらを使用します。

<bean id="service" class="com.mycompany.Service">
    <property name="someParameter" value="${someParameterKey}"/>
</bean>

または注釈で:

@Value("${someParameterKey}")
private String someParameter;
于 2013-08-02T09:48:41.600 に答える