Weblogic 10.3.6: активировать весенние загрузочные профили из web.xml - PullRequest
0 голосов
/ 01 марта 2019

Я использую Spring Boot на weblogic 10.3.6;однако мы обычно используем встроенный tomcat во время разработки.

Я бы хотел включить определенный профиль Spring, когда на weblogic, чтобы приспособить его для другой конфигурации / bean-компонентов, которые будут использоваться, когда на wl.Поскольку я вынужден использовать web.xml на этой древней версии сервера приложений, я бы хотел использовать web.xml для активации нужного мне профиля weblogic.

Это мой web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>my.class.annotated.with.SpringBootApplication</param-value>
    </context-param>

    <listener>
        <listener-class>org.springframework.boot.legacy.context.web.SpringBootContextLoaderListener</listener-class>
    </listener>

    <servlet>
        <servlet-name>appServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextAttribute</param-name>
            <param-value>org.springframework.web.context.WebApplicationContext.ROOT</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>appServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

</web-app>

До сих пор я видел предложение использовать

<context-param>
    <param-name>spring.profiles.active</param-name>
    <param-value>weblogic</param-value>
</context-param>

или

<init-param>
    <param-name>spring.profiles.active</param-name>
    <param-value>weblogic</param-value>
</init-param>

в конфигурации DispatcherServlet.

Я даже пыталсянастройка ApplicationContextInitializer, но SpringBootContextLoaderListener предоставляет свой собственный инициализатор.

Есть ли правильный способ выполнить то, что я хочу?Я не могу поместить конфигурацию weblogic в основной application.yml, потому что это нарушит встроенную конфигурацию Tomcat, которую мы используем для разработки.

...