如何在Weblogic中配置jdbc jndi数据源?

时间:2019-07-17 09:29:43

标签: java-ee jdbc datasource jndi weblogic12c

我正在设置现有的基于tomcat的多模块应用程序以与WEBLOGIC12c一起使用。

此应用程序已在weblogic上正确部署,但未与我现有的数据库连接并给出以下错误-

ERROR [ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)' [DbUtil]: An exception occurred while sql lite database connection 
javax.naming.LinkException:  [Root exception is javax.naming.NameNotFoundException: While trying to lookup 'jdbc.myDB' didn't find subcontext 'jdbc'. Resolved ''; remaining name 'jdbc/myDB']; Link Remaining Name: 'jdbc/myDB'
    at weblogic.jndi.internal.WLNamingManager.getObjectInstance(WLNamingManager.java:114)
    at weblogic.jndi.internal.BasicNamingNode.resolveObject(BasicNamingNode.java:1037)
    at weblogic.jndi.internal.ApplicationNamingNode.resolveObject(ApplicationNamingNode.java:186)
    at weblogic.jndi.internal.BasicNamingNode.resolveObject(BasicNamingNode.java:1009)
    at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:223)
    at weblogic.jndi.internal.ApplicationNamingNode.lookup(ApplicationNamingNode.java:132)
    at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:228)
    at weblogic.jndi.internal.ApplicationNamingNode.lookup(ApplicationNamingNode.java:132)
    at weblogic.jndi.internal.WLEventContextImpl.lookup(WLEventContextImpl.java:307)
    at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:435)

由于我是Weblogic的新手,经过一番调查,我知道现有的context.xml不会与weblogic绑定。

因此,如果我想保留所有与tomcat / context.xml一起使用的内容,该如何对weblogic进行操作

现有的context.xml具有多个具有这样的连接池配置的数据库-

<Context>
    <Resource
        name="jdbc/devDB1"
        auth="Container"
        type="javax.sql.DataSource"
        maxActive="100"
        maxIdle="5"
        maxWait="-1"
        driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
                url="jdbc:sqlserver://localhost:1433;DatabaseName=devDB1"
        username="sa"
        password="pwd1"
        removeAbandoned="true"
        removeAbandonedTimeout="300"
        logAbandoned="false"
    />
    <Resource
        name="jdbc/devDB2"
        auth="Container"
        type="javax.sql.DataSource"
        maxActive="100"
        maxIdle="5"
        maxWait="-1"
        driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
        url="jdbc:sqlserver://localhost:1433;DatabaseName=devDB2"
        username="sa"
        password="pwd2"
        removeAbandoned="true"
        removeAbandonedTimeout="300"
        logAbandoned="false"
           />
           ...........

我希望weblogic jdbc资源配置可以使用相同的配置 并且还需要在生产环境中实现这一目标的最佳方法。

1 个答案:

答案 0 :(得分:0)

Oracle关于数据源配置的文档为here

对于您的所有环境,请创建并使用WLST脚本来避免手动配置步骤。