【问题标题】:Spring boot WebLogic 12c Jndi DatasourceSpring Boot WebLogic 12c Jndi 数据源
【发布时间】:2020-03-06 08:09:38
【问题描述】:

我正在 WebLogic 12c 上部署 Spring Boot 应用程序。

没有 Jndi 数据源一切正常。 我尝试在 WebLogic 上配置一个名为“jdbc/MyDataSource”的数据源,并在我的应用程序上设置了这样的属性:

spring.datasource.jndi-name=jdbc/MyDataSource

但是,当我部署我的网络应用程序时,我收到以下错误:

weblogic.application.ModuleException: javax.naming.NameNotFoundException:尝试查找时 “jdbc.MyDataSource”没有找到子上下文“jdbc”。解决 ''; 剩余名称'jdbc/MyDataSource'

我还尝试了以下属性配置但没有成功:

spring.datasource.jndi-name=java:comp/env/jdbc/MyDataSource

spring.datasource.jndi-name=java:/jdbc/MyDataSource

spring.datasource.jndi-name=java:jdbc/MyDataSource

我的 Maven 配置:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.2.RELEASE</version>
    <relativePath />
</parent>

我的 Spring 应用配置:

@EnableSwagger2

@ComponentScan({ "com.ws.repository", "com.ws.service", "com.ws.controller" })

@EntityScan("com.ws.entity")

@EnableJpaRepositories(basePackages = "com.ws.repository")

public class MyServiceApplication {
...
}

预期:

我想使用同一个 jndi 数据源,因为我想部署许多只使用一个数据源的服务

【问题讨论】:

    标签: spring-boot datasource jndi weblogic12c


    【解决方案1】:

    我解决了修改数据源的服务器目标(全部,包括AdminServer)并保存配置

    【讨论】:

      【解决方案2】:

      尝试default DataSource,并设置查找名称(java:comp/DefaultDataSource),并检查它是否有效。

      我有an example using Spring with Wildfly,所有 JNDI 名称(Datasource、JMS、Java Mail、EntityManagerFactory 等)都运行良好。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-02-10
        • 1970-01-01
        • 2015-12-11
        • 1970-01-01
        • 2018-10-03
        • 2015-06-11
        • 2016-08-27
        • 2017-02-20
        相关资源
        最近更新 更多