Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Weblogic 10.3.6:从web.xml激活spring启动配置文件_Java_Spring Boot_Weblogic 10.x - Fatal编程技术网

Java Weblogic 10.3.6:从web.xml激活spring启动配置文件

Java Weblogic 10.3.6:从web.xml激活spring启动配置文件,java,spring-boot,weblogic-10.x,Java,Spring Boot,Weblogic 10.x,我在WebLogic10.3.6上使用SpringBoot;然而,在开发过程中,我们通常使用嵌入式tomcat 我希望在weblogic上启用特定的Spring配置文件,以适应在wl上使用的不同配置/bean。因为我被迫在那个古老版本的应用服务器上使用web.xml,所以我想使用web.xml来激活我需要的weblogic概要文件 这是我的web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5"

我在WebLogic10.3.6上使用SpringBoot;然而,在开发过程中,我们通常使用嵌入式tomcat

我希望在weblogic上启用特定的Spring配置文件,以适应在wl上使用的不同配置/bean。因为我被迫在那个古老版本的应用服务器上使用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>

上下文配置位置
my.class.annotated.with.springboot应用程序
org.springframework.boot.legacy.context.web.SpringBootContextLoaderListener
appServlet
org.springframework.web.servlet.DispatcherServlet
上下文属性
org.springframework.web.context.WebApplicationContext.ROOT
1.
appServlet
/
到目前为止,我已经看到了使用的建议

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

spring.profiles.active
应用服务器


spring.profiles.active
应用服务器
在DispatcherServlet配置中

我甚至尝试配置ApplicationContextInitializer,但SpringBootContextLoaderListener提供了自己的初始值设定项


有没有合适的方法来实现我想要的?我不能将weblogic配置放在main application.yml中,因为这会破坏我们用于开发的嵌入式tomcat配置。

在web.xml中没有看到这样做。您可以将一个环境变量添加到服务器启动命令
-Dspring.profiles.active=weblogic
,或者通过其他方式,我非常希望避免这样做,因为weblogic域与其他应用程序共享,我必须与不愉快的人交互才能实现这一点。我认为这是我最后一次访问。Web.xml应该工作。其他方法-通过编程,您可以读取一些指示在weblogic上运行的环境变量(OS?)。或者,将web logic设置为默认配置文件,然后不需要在服务器上执行任何操作,只需在本地执行?在web.xml中没有看到过这样的操作。您可以将一个环境变量添加到服务器启动命令
-Dspring.profiles.active=weblogic
,或者通过其他方式,我非常希望避免这样做,因为weblogic域与其他应用程序共享,我必须与不愉快的人交互才能实现这一点。我认为这是我最后一次访问。Web.xml应该工作。其他方法-通过编程,您可以读取一些指示在weblogic上运行的环境变量(OS?)。或者,将web逻辑设置为默认配置文件,然后不需要在服务器上执行任何操作,只需在本地执行?
<init-param>
    <param-name>spring.profiles.active</param-name>
    <param-value>weblogic</param-value>
</init-param>