私は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の属性で
それResource
の属性としてfactory
は言及していません。それにもかかわらず、私はserver.xml
に定義してエラーが発生していません。
これは何を意味していますか?org.apache.tomcat.jdbc.pool.DataSourceFactory
工場はここにはありませんか?
あなたが与えたリンクでは、 'context.xml'で定義された' Resource'への参照があります。しかし、 'server.xml'に' GlobalNamingResources'を使っています。私は 'server.xml '?私は、' server.xml'を使ったグーグルの例をたくさん見てきました – Jim
グローバルとローカルの "'宣言との違いはありません。グローバルなものを ' 'で使用し、まったく同じ属性を期待します。それ以外の場合、 "完全な"リソースをグローバルに宣言することはできませんでした。 –
私の関心事は次のとおりです。 'context.xml'のネストされたコンポーネントとしての' resource'はdoc.Butの 'factory'属性を持つように定義されています。' resource'は 'server.xml'のネストされたコンポーネントです。 ( 'globalresources'にネストされています)は1つもないようです。この要素は両方のXMLファイル(' server.xml'と 'context.xml')で同じですか? – Jim