Определение среды в Spring Boot на основе переменной среды Weblogic - PullRequest
0 голосов
/ 05 июля 2018

Я пытаюсь определить среду, в которой находится приложение, но использую переменную среды, которую Weblogic устанавливает при запуске через эту строку:

-Denvironment=DEV

У меня есть класс конфигурации ниже:

package ie.gov.agriculture.cds;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
import org.springframework.context.support.PropertySourcesPlaceholderConfigurer;

@Configuration
@PropertySource("classpath:application.properties")
public class AppConfig {

    @Value("${environment}")
    private String env;

    @Bean
    public static PropertySourcesPlaceholderConfigurer propertyConfigInDev() {
        return new PropertySourcesPlaceholderConfigurer();
    }
}

В application.properties, если я определяю свойство "environment", то, похоже, оно работает, но это не то, чего я хочу достичь. Похоже, мне нужно заменить значение аннотации PropertySource чем-то, что будет указывать на сервер weblogic?

Любая помощь будет высоко ценится!

Ответы [ 3 ]

0 голосов
/ 05 июля 2018

Попробуйте заменить на строку ниже. Я вижу, что $ отсутствует в вашем коде

@Value("${environment}")
0 голосов
/ 05 июля 2018

Таким образом, решение состоит в том, что мне не хватало свойства в конфигурации моего сервера weblogic, поэтому оно не было выбрано.

Внутри домена \% APPCODE% \ bin моего веб-логического сервера в файле setDomainEnv.cmd я включил свойство среды.

set JAVA_OPTIONS = -Dssoautologin.appcode =% APPCODE% -Denvironment = DESKTOP

Это может быть получено Spring с помощью аннотации @Value("${environment}").

Надеюсь, это поможет кому-то еще!

0 голосов
/ 05 июля 2018

Если это переменная окружения, вы можете получить доступ к:

String env = System.getProperty("environment");

Таким образом, вам не нужно устанавливать его как свойство в вашем application.properties

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...