我正在使用Tomcat的7連接池。我的配置如下:
在server.xml
:Tomcat:我搞砸了我的jndi連接設置或什麼?
<GlobalNamingResources>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users
-->
<Resource name="jdbc_DS" auth="Container"
type="javax.sql.DataSource"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
driverClassName="org.h2.Driver"
url="jdbc:h2:file:absolutePathtodatabase"
username="root" password=""
maxActive="20" maxIdle="10" maxWait="-1"
/>
</GlobalNamingResources>
而且在context.xml中:
<ResourceLink name="jdbc/myDS"
global="jdbc_DS"
type="javax.sql.DataSource"/>
這似乎工作,但我注意到以下幾點:
在資源here:global resources它的屬性並沒有提及factory
作爲Resource
的屬性。但是我已經在server.xml
中定義了它,並沒有發生錯誤。
這是什麼意思?我在這裏沒有使用org.apache.tomcat.jdbc.pool.DataSourceFactory
工廠嗎?
在給出的鏈接中,引用是在'context.xml'中定義的'Resource',但是我在'server.xml'中使用'GlobalNamingResources'.Am我錯誤地使用'server.xml '?我看過很多例子,使用'server.xml'搜索google0001 – Jim 2012-03-01 08:16:43
我看到全局和本地「'''聲明」沒有區別。你用''來使用全局變量,並且期望有相同的屬性。否則,您無法在全球範圍內聲明「完整」資源。 –
2012-03-01 08:26:25
我的關注點如下:'context.xml'中的'resource'作爲嵌套組件被定義爲在doc的鏈接中具有'factory'屬性,但是'resource'作爲'server.xml'中的嵌套組件(嵌套在'globalresources'中)似乎沒有一個。你說這個元素在兩個xml文件('server.xml'和'context.xml')中是相同的嗎? – Jim 2012-03-01 08:30:01