Попытка автоматической проводки свойств в bean в Spring 3.0.5.RELEASE, я использую:
-
config.properties:username=myusername -
main-components.xml:<context:property-placeholder location="classpath:config.properties" /> -
MyClass:
@Service public class MyClass { @Value("${username}") private String username; ... }
В результате имя пользователя устанавливается буквально "${username}", поэтому выражение не получает синтаксический анализ. Мои другие связанные с этим отношения с автоподключением этого класса устанавливаются, а Spring не вызывает никаких исключений. Я также попытался добавить @Autowired, но это не помогло.
Если я анализирую свойства для отдельного bean, а затем использую @Autowired + @Qualifier, он работает:
<bean id="username" class="java.lang.String">
<constructor-arg value="${username}"/>
</bean>
Любые идеи о том, как использовать только @Value? Может быть, мне нужно включить некоторую зависимость Spring, которой у меня нет? Спасибо вам