WebSphere® Application Server を使用して、Spring アプリケーションのデータ・ソースへのアクセスを管理することができます。
このタスクについて
Spring アプリケーションが Java Database Connectivity (JDBC) データ・ソースなどのデータ・ソースにアクセスするためには、アプリケーションは、
WebSphere Application Server によって管理されるリソース・プロバイダーを使用している必要があります。Spring アプリケーションおよび Spring Framework について詳しくは、以下のトピックを参照してください。
手順
- 開発時に、リソース参照を使用して WAR モジュールを構成します。 以下に例を示します。
<resource-ref>
<res-ref-name>jdbc/springdbres-ref-name>jdbc/springdb>
<res-type>javax.sql.DataSourceres-type>javax.sql.DataSource>
<res-auth>Containerres-auth>Container>
<res-sharing-scope>Shareableres-sharing-scope>Shareable>
</resource-ref>
- Enterprise JavaBeans (EJB) Java™ アーカイブ (JAR) ファイルについて、データ・ソースへのアクセスを必要とする各 EJB で同じリソース参照を宣言します。 以下のいずれかのステップを使用します。
- データ・ソース・プロキシー Bean を宣言します。Spring アプリケーション構成で、アプリケーション・サーバーが管理するリソース・プロバイダーを参照するプロキシー Bean を宣言します。jndiName プロパティーの値を java:comp/env/ に設定し、それに続けて、リソース参照で宣言した res-ref-name プロパティーの値を指定します。以下に例を示します。
<bean id="wasDataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="java:comp/env/jdbc/springdb"/>
<property name="lookupOnStartup" value="false"/>
<property name="cache" value="true"/>
<property name="proxyInterface" value="javax.sql.DataSource"/>
</bean>
- または、Spring Framework バージョン 2.5 以上の場合は、<j2ee:jndi-lookup/> アプローチを使用します。jndi-name プロパティーの値を、リソース参照で宣言した res-ref-name プロパティーの値に設定し、resource-ref プロパティーの値を true に設定します。以下に例を示します。
<jee:jndi-lookup id=" wasDataSource "
jndi-name="jdbc/springdb"
cache="true"
resource-ref="true"
lookup-on-startup="false"
proxy-interface="javax.sql.DataSource"/>
これにより、Spring アプリケーションでは、必要に応じてデータ・ソース・プロキシー Bean を使用できるようになります。
- このアプリケーションをアプリケーション・サーバーにデプロイするときに、Spring アプリケーション・リソース参照が使用できるリソース・プロバイダーとリソース・データを構成します。
タスクの結果
このモジュールのデプロイメント記述子で宣言されているリソース参照が、デプロイメント中に、アプリケーション・サーバーの構成済みデータ・ソースにバインドされます。