Spring Application Context:如何将类的构造函数参数设置为类静态成员变量?

时间:2012-11-07 12:32:46

标签: spring static-members applicationcontext restlet-2.0

在应用程序上下文XML文件中,如何将构造函数参数设置为静态类成员?

例如,我使用的是Restlet,其中一个名为ChallengeAuthenticator的Restlet接收了一个挑战方案成员变量。

// Normal Initialization
ChallengeAuthenticator challengeAuthenticator = new ChallengeAuthenticator(
                null, ChallengeScheme.HTTP_BASIC, "WSRealm");

如果可能的话,我想在应用程序上下文中使用它。对于这样的事情:

<bean id="challengeAuthenticator" class="org.restlet.security.ChallengeAuthenticator">
  <!-- Not meant to be String for value just trying to make it easier to reader to interpret my question -->  
  <constructor-arg value="ChallengeScheme.HTTP_BASIC" />
</bean>

1 个答案:

答案 0 :(得分:3)

最简单的方法是使用Spring Expression Language

<constructor-arg value="#{ T(ChallengeScheme).HTTP_BASIC }" />

请注意,您需要T(...)中的完整班级名称。