相关疑难解决方法(0)

什么是web.xml中的resource-ref用于?

我只是想知道你何时/为什么要在web.xml文件中定义resource-ref元素?

我原本以为它会在您的web/app服务器中使用JNDI定义,然后在Java代码中查找JNDI引用?

资源引用定义对我来说似乎有点多余,我无法想到什么时候它可能有用.例:

<resource-ref>
  <description>Primary database</description>
  <res-ref-name>jdbc/primaryDB</res-ref-name>
  <res-type>javax.sql.DataSource</res-type>
  <res-auth>CONTAINER</res-auth>
</resource-ref>
Run Code Online (Sandbox Code Playgroud)

java web.xml resource-ref

109
推荐指数
1
解决办法
11万
查看次数

什么是java:comp/env?

是什么意思java:comp/env

看起来像什么:

Context envContext = (Context)initContext.lookup("java:comp/env");
Run Code Online (Sandbox Code Playgroud)

做什么?

我明白这样的查找:

(DataSource)envContext.lookup("jdbc/MyDatasource")
Run Code Online (Sandbox Code Playgroud)

MyDatasourcecontext.xml或中查找名称web.xml以获取数据库的URL.是这样吗 ?!但是前者看起来做了什么?

java jndi java-ee

77
推荐指数
3
解决办法
8万
查看次数

以编程方式将数据源添加到嵌入式tomcat 7中的JNDI上下文

我正在尝试在服务器启动之前注册一个新的数据源,但是我正在查找执行的查找

javax.naming.NameNotFoundException:名称[jdbc/db]未绑定在此Context中.无法找到[jdbc].

这是我启动tomcat的方式:

    Tomcat tomcat = new Tomcat();
    //...
    ContextResource resource = new ContextResource();
    resource.setName("jdbc/db");
    resource.setAuth("Container");
    resource.setType("javax.sql.DataSource");
    resource.setScope("Sharable");
    resource.setProperty("driverClassName", "org.hsqldb.jdbc.JDBCDriver");
    resource.setProperty("url", "jdbc:hsqldb:hsql://localhost:1234/mydb1");

    tomcat.getServer().getGlobalNamingResources().addResource(resource);
    tomcat.start();
    tomcat.getServer().await();
Run Code Online (Sandbox Code Playgroud)

查找:

    Connection conn = null;
    try {
        Context initContext = new InitialContext();
        Context envContext = (Context) initContext.lookup("java:/comp/env");
        DataSource ds = (DataSource) envContext.lookup("jdbc/db");

        conn = ds.getConnection();
        conn.createStatement()....
    } catch (Exception e) {
        e.printStackTrace();
    }
Run Code Online (Sandbox Code Playgroud)

我在这里错过了什么?

java tomcat jndi datasource jdbc

4
推荐指数
2
解决办法
5437
查看次数

标签 统计

java ×3

jndi ×2

datasource ×1

java-ee ×1

jdbc ×1

resource-ref ×1

tomcat ×1

web.xml ×1