現在、CXF.xml にデータ ソース宣言があります。
<bean id="myDB2DataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.ibm.db2.jcc.DB2Driver" />
<property name="url" value="<my db2 url>" />
<property name="username" value="<my username>" />
<property name="password" value="<my password>" />
<property name="connectionProperties">
<props>
<prop key="blockingReadConnectionTimeout">20</prop>
</props>
</property>
</bean>
これはうまくいきます。しかし、おそらく JNDI を使用して、これをデータソース xml ファイル (my-ds.xml) に移動する必要があります。
次のようなもの: (cxf.xml 内)
<bean id="myDB2DataSource" class="org.springframework.jndi.JndiObjectFactoryBean"
scope="singleton">
<property name="jndiName">
<value>java:/jdbc.datasource.myDB2DataSource</value>
</property>
</bean>
および (my-ds.xml 内):
<datasource jndi-name="java:/jdbc.datasource.myDB2DataSource"
pool-name="jdbc.datasource.myDB2DataSource" jta="false">
<connection-url>"<my db2 url>"
</connection-url>
<driver>com.ibm.db2.jcc.DB2Driver</driver>
<security>
<user-name><my username></user-name>
<password><my password></password>
</security>
</datasource>
しかし、私はそれを機能させることはできません。cxf.xml と my-ds.xml の正しい構成は何ですか?
私は常に BeanCreationNotAllowedException に遭遇します。: 'cxf' という名前の Bean の作成中にエラーが発生しました
そして、私のビーン myDB2DataSource が見つからないため、これが原因であると私が信じている他の多くの例外 ()。
No matching bean of type [javax.sql.DataSource] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Qualifier(value=myDB2DataSource)}
Related cause: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSourceMIMS' defined in ServletContext resource [/WEB-INF/cxf.xml]: Invocation of init method failed; nested exception is javax.naming.NameNotFoundException: jdbc.datasource.myDB2DataSource -- service jboss.naming.context.java."jdbc.datasource.myDB2DataSource"
ありがとう!