Я пытаюсь загрузить значения файла свойств конкретного профиля с помощью springboot в мой класс @webservice.Я выполнил следующие шаги:
1)
created application.properties with profile to be active
spring.profiles.active=dev
2)
Created application-dev.properties with following values
username = XXXXXXX
password = XXXXXXX
host = XXXXXXX
port = XXXXXXX
welcome.message = Development
3)
Created @Springbootapplication class
4)
Created @configuration class for appconfig
5) Началось чтение значений application-dev.properties в классе appconfig с использованием
кода:
public class AppConfig {
@Value("${welcome.message}")
private String welcomeMsg;
@Profile("dev")
@Bean
public MessageSource messageSourceDev() {
System.out.println("****Dev Profile called*****"+welcomeMsg);
при запуске из набора инструментов Spring для первогоприветственное сообщение о времени успешно распечатано в консоли.
"Профиль разработки **** вызван ***** Development"
Но когда я пытаюсь прочитать значения свойств из класса @webservice Iс помощью мыльного интерфейса пользователя
Код:
@WebService(serviceName = "SampleIF", endpointInterface = "com.tc.services.sample.cxf.SampleIF")
public class SampleIFImpl implements SampleIF {
@Value("${welcome.message}")
private String welcomeMsg;
@Override
public Contact CreateContract(Details details) {
System.out.println("****Welcome Message Val*****"+welcomeMsg);
Либо происходит сбой в appconfig.class, вызывая следующее исключение
1)
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'appConfig': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'welcome.message' in value "${welcome.message}"
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:379)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1348)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:578)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:501)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:317)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:315)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:760)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:869)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:550)
at org.springframework.context.annotation.AnnotationConfigApplicationContext.<init>(AnnotationConfigApplicationContext.java:88)
2) Или класс @webservice со значением NULL
Пожалуйста, помогите мне решить проблему.