・・・ <Context docBase="RSSReader" path="/RSSReader" reloadable="true" source="org.eclipse.jst.j2ee.server:RSSReader"> <Resource name="jdbc/myoracle" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@localhost:1521:xe" username="RSS" password="dbpass" maxActive="20" maxIdle="10" maxWait="-1" /> </Context> </Host> </Engine> </Service> </Server>※ context.xml に Resource を定義すると、server.xml のすべての Context に同様の定義をしたのと同じ効果が得られます。
<!-- resources --> <resource-ref> <description>Oracle Datasource example</description> <res-ref-name>jdbc/myoracle</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> </web-app>※注意:web.xml は、タグの順序を決められたとおりに書かないと動きません。タグの順番については、JSR-000154 JavaTM Servlet 2.4 Specification を参照してください
Context initContext = new InitialContext(); Context envContext = (Context)initContext.lookup("java:/comp/env"); DataSource ds = (DataSource)envContext.lookup("jdbc/myoracle"); Connection conn = ds.getConnection();