【问题标题】:Impossible to deploy on Weblogic无法在 Weblogic 上部署
【发布时间】:2019-10-04 19:59:15
【问题描述】:

我尝试在这些问题中应用所有解决方案:

Tomcat vs Weblogic JNDI Lookup

javax.naming.NameNotFoundException:while trying to lookup jdbc

但他们没有解决我的问题。 我正在使用 Maven 和 WebLogic。

在我的 web.xml 中,我使用了标签“res-ref-name”。

非常感谢!

【问题讨论】:

  • 你怎么编辑了这个问题?现在所有答案都没有任何意义

标签: java maven


【解决方案1】:

您已使用名称“jndi/ConsipGfrDS”注册了您的数据源,但使用“jdbc/ConsipGfrDS”查找。在这两种情况下都使用一个(无论如何,但相同的)名称。

我建议您在 JNDI 中使用名称“jdbc/ConsipGfrDS”,因为如果您在 JNDI 中有很多对象,则将对象分类更容易。

【讨论】:

    【解决方案2】:

    这是老式的 JNDI,这里有几个问题。

    您的web.xml 已正确定义

    <res-ref-name>jdbc/ConsipGfrDS</res-ref-name>
    

    这些资源引用在 JNDI java:comp/env 命名空间中定义名称,也称为 Web 应用程序本地的组件环境命名空间。这意味着您的 Web 应用程序中数据源的完整 JNDI 名称实际上是 java:comp/env/jdbc/ConsipGfrDS,因此您的查找代码应该是:

    @Bean
    public DataSource dataSource() throws NamingException {
        Context ctx = new InitialContext();
        return (DataSource)ctx.lookup("java:comp/env/jdbc/ConsipGfrDS");
    }
    

    到目前为止,我们有平台独立(即应用服务器)代码。您已将平台相关部分正确推送到weblogic.xml文件中。

    但是,这是您的第二个问题所在。 weblogic.xml 包含一个小错误。您提供的显示 JDBC 数据源配置的 weblogic 控制台图像显示 JNDI 名称为 jdbc/ConsipGfrDS。因此,更新如下:

    <?xml version="1.0" encoding="UTF-8" ?>
    <weblogic-web-app
        xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="
            http://xmlns.oracle.com/weblogic/weblogic-web-app http://http://www.oracle.com/technology/weblogic/weblogic-web-app/1.1/weblogic-web-app.xsd">
    
        <resource-description>
            <!-- match jndi name in weblogic -->
            <jndi-name>jdbc/ConsipGfrDS</jndi-name>
            <!-- match res-ref-name name in web.xml -->
            <res-ref-name>jdbc/ConsipGfrDS</res-ref-name>
        </resource-description>
    
    </weblogic-web-app>
    

    玩得开心!

    【讨论】:

    • 您按照我的建议更改了 java 代码?您是否有相同的错误消息 - 或已更改?
    猜你喜欢
    • 1970-01-01
    • 2012-02-16
    • 2013-08-19
    • 1970-01-01
    • 1970-01-01
    • 2017-05-21
    • 1970-01-01
    • 2017-12-23
    • 1970-01-01
    相关资源
    最近更新 更多