![](/img/trans.png)
[英]@PropertySource on a bean not picked up by Spring in JavaConfig
[英]Spring 4 @PropertySource not working when ResourceBundleMessageSource bean is registered
@Configuration
@PropertySource("classpath:service.properties")
public class ApplicationConfig{
@Value("PROPERTY_MYSQL_JNDI_NAME")
private String jndiName;
}
這工作正常。 但是當我注冊
@Bean
public MessageSource messageSource() {
ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource();
messageSource.setBasenames("resources/authentication");
messageSource.setDefaultEncoding("UTF-8");
return messageSource;
}
ApplicationConfig 類中的 bean 之前的屬性加載不起作用。 我能做些什么來測試它嗎
我面臨着同樣的問題。 就我而言,我錯過了添加以下 bean:
@Bean
public static PropertySourcesPlaceholderConfigurer propertySourcesPlaceholderConfigurer() {
return new PropertySourcesPlaceholderConfigurer();
}
這使得屬性加載正常工作。
您 messageSource 是錯誤的,假設您的 authentication.properties 在 src/resources 中,它應該如下所示:
@Bean
public MessageSource messageSource() {
ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource();
messageSource.setBasenames("authentication");
messageSource.setDefaultEncoding("UTF-8");
return messageSource;
}
你仍然可以使用
@PropertySource("classpath:config.properties")
假設 config.properties 在 src/resources
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.