哎,给你一个吧。多看看帮助: <Context path="/bbs" docBase="E:\Java\Tomcat4.0\webapps\totyusoftforum" debug="0"
                 reloadable="true" crossContext="true">
 
 <Environment name="maxExemptions" type="java.lang.Integer" value="15"/>
 <Resource name="jdbc/PdaDB" auth="Container" type="javax.sql.DataSource"/>
 <ResourceParams name="jdbc/PdaDB">
 <parameter>
 <name>user</name>
 <value>taoy</value>
     </parameter>
 <parameter>
 <name>password</name>
 <value>112233</value>
 </parameter>
 <parameter>
 <name>driverClassName</name>
 <value>oracle.jdbc.driver.OracleDriver</value>
 </parameter>
 <parameter>
 <name>driverName</name>
 <value>jdbc:oracle:thin:@localhost:1521:oracledb</value>
 </parameter>
 </ResourceParams> </Context>记着给分。呵呵

解决方案 »

  1.   

    我也是这样写的,可就是不行。
              <Resource name="jdbc/JWDB" auth="Container" type="javax.sql.DataSource"/>
      <ResourceParams name="jdbc/JWDB">
        <parameter>
          <name>user</name>
          <value>tester</value>
        </parameter>
        <parameter>
          <name>password</name>
          <value>123456</value>
        </parameter>
        <parameter>
          <name>driverClassName</name>
          <value>oracle.jdbc.driver.OracleDriver</value>
        </parameter>
        <parameter>
          <name>driverName</name>
          <value>jdbc:oracle:thin:@192.168.0.100:1521:orcl</value>
        </parameter>
      </ResourceParams>
    我的代码如下:
    try{
    Context initCtx = new InitialContext();
    Context envCtx = (Context) initCtx.lookup("java:comp/env");
    DataSource ds= (DataSource)envCtx.lookup("jdbc/JWDB");
    //ds = null why?
    Connection conn = ds.getConnection();
    conn.close();
    }
    catch(Exception e){
    System.out.println("error:"+e.toString()+"<br>");
    }
    可我得到的datasource总为null.楼上的,为什么?谢谢
    一定给分。
      

  2.   

    我解决了,我犯了一个低级的错误,我的Context path docBase指定错了。
      

  3.   

    ??
    你看你的oracle连接建立了吗?
    用netstat 看看.
      

  4.   

    ??
    你看你的oracle连接建立了吗?
    用netstat 看看.
      

  5.   

    DataBind() 我的tomcat也是这个毛病,给解释一下那,分么可以商量。我的$CATALINA_HOME/conf/server.xml 里面这样<Context path="" docBase="/sharedir/work/" debug="0" reloadable="true" />
            -->
            <Context path="" docBase="/sharedir/jdbctest" debug="0" reloadable="true" >
            <Resource name="jdbc/PsDB" auth="Container" type="javax.sql.DataSource" />
            <ResourceParams name="jdbc/PsDB">
            <parameter><name>user</name><value>user</value></parameter>
            <parameter><name>password</name><value>user</value></parameter>
            <parameter><name>driverClassName</name><value>oracle.jdbc.driver.OracleDriver</value></parameter>
            <parameter><name>driverName</name><value>oracle:thin:@192.168.100.32:1521:project</value></parameter>
            </ResourceParams>
            </Context>jsp 文件中与你写的一样,就是得到ds为null,百思不得其解,我的jndi了解不多,希望能解释详细一点。
      

  6.   

    Server.xml:
      <Context path="/test" docBase="test" debug="0" privileged="true">
              <Logger className="org.apache.catalina.logger.FileLogger"
                         prefix="localhost_test_log." suffix=".txt"
               timestamp="true"/>
              <Environment name="maxExemptions" type="java.lang.Integer"
                          value="15"/>
              <Parameter name="context.param.name" value="context.param.value"
                         override="false"/>            
      <Resource name="jdbc/JWDB" auth="Container" type="javax.sql.DataSource"/>
      <ResourceParams name="jdbc/JWDB">
        <parameter>
          <name>user</name>
          <value>tester</value>
        </parameter>
        <parameter>
          <name>password</name>
          <value>123456</value>
        </parameter>
        <parameter>
          <name>driverClassName</name>
          <value>oracle.jdbc.driver.OracleDriver</value>
        </parameter>
        <parameter>
          <name>driverName</name>
          <value>jdbc:oracle:thin:@192.168.0.100:1521:orcl</value>
        </parameter>   </ResourceParams>

      </Context>
    webapps/test/web-inf/web.xml:
    <web-app>
    <!-- Resource reference, which is typically to an object factory for resources -->
    <!-- such as a JDBC DataSource, a JavaMail Session, or custom object factories -->
    <!-- configured into Tomcat 4. -->
    <!-- Add By Databind(Copy from tomcat 4.0.3 's document _JNDI Resources HOWTO) -->  
    <!-- start here -->
    <resource-ref>
      <description>
        Resource reference to a factory for java.sql.Connection
        instances that may be used for talking to a particular
        database that is configured in the server.xml file.
      </description>
      <res-ref-name>
        jdbc/JWDB
      </res-ref-name>
     
      <res-type>
     javax.sql.DataSource
      </res-type>
     
      <res-auth>
        Container
      </res-auth>
    </resource-ref>
    <!-- end here -->
    </web-app>
    webapps/test/test.jsp:
        Context initCtx = new InitialContext();
        Context envCtx = (Context) initCtx.lookup("java:comp/env");
        DataSource ds= (DataSource)envCtx.lookup("jdbc/JWDB");
        out.println(ds);
        Connection conn1;
        conn1 = ds.getConnection();
        conn1.close();           注意:虽然ds不是null了,但好像不是真的连接池???oracle中的连接的数目和内容看来不是从池中取出。
    我的邮件地址:[email protected],有空切磋。我也是初用,希望对你有帮助。