configurationjdbc-pool(tomcat 7)

我有一些问题与tomcat 7configurationjdbc池:我试图遵循这个例子: http : //www.tomcatexpert.com/blog/2010/04/01/configuring-jdbc-pool-high-并发

所以我有:

的conf / server.xml中

<GlobalNamingResources> <Resource type="javax.sql.DataSource" name="jdbc/DB" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/mydb" username="user" password="password" /> </GlobalNamingResources> 

conf / context.xml文件

 <Context> <ResourceLink type="javax.sql.DataSource" name="jdbc/LocalDB" global="jdbc/DB" /> <Context> 

当我试图做到这一点:

 Context initContext = new InitialContext(); Context envContext = (Context)initContext.lookup("java:/comp/env"); DataSource datasource = (DataSource)envContext.lookup("jdbc/LocalDB"); Connection con = datasource.getConnection(); 

我不断收到这个错误:

 javax.naming.NameNotFoundException: Name jdbc is not bound in this Context at org.apache.naming.NamingContext.lookup(NamingContext.java:803) at org.apache.naming.NamingContext.lookup(NamingContext.java:159) 

请帮助tnx

检查你的context.xml文件。 您是否在默认文件的现有<Context>中embedded了<Context>

最糟糕的情况下,采取这一点:

  <ResourceLink type="javax.sql.DataSource" name="jdbc/LocalDB" global="jdbc/DB" /> 

…并确保它在已经存在的<Context>标签内,并去除多余的标签。

一般来说,我不build议编辑server.xml或context.xml来创build这些资源。 Tomcat文档将在一定程度上支持我:

http://tomcat.apache.org/tomcat-7.0-doc/config/context.html

请参阅“简介”部分的尾部。 通常,我为此目的在/ conf / Catalina / localhost目录中创buildcontext.xml.default文件甚至appname.xml文件。 从应用程序特定的configuration中抽象出全局configuration。

通常,我为此目的在/ conf / Catalina / localhost目录中创buildcontext.xml.default文件甚至appname.xml文件。

这是正确的方式。

您可以通过java:comp / env / jdbc / DB在一行中执行查找,不需要两次查找。