私は豆をロードするために春のプロファイルを持つ春3.1を使用しています。私のアプリのコンテキストファイルでは、私は次のようにプロパティをロードします。プロパティが複数のコンテキストで見つかりません:property-placeholder
<context:property-placeholder order="1" location="classpath*:META-INF/spring/*_${spring.profiles.active}.properties" ignore-unresolvable="true"/>
そして私はそれが正常に動作します
<property name="driverClassName" value="${database.driverClassName}"/>
などのデータソースBeanをロードするためにプロパティの値を使用します。 いくつかのデータベーステーブルのプロパティをロードできるように、2つ以上のプロパティプレースホルダを追加すると問題が発生します。
このプロパティを使用して、詳細に追加する
<bean id="configFactoryBean"
class="org.springmodules.commons.configuration.CommonsConfigurationFactoryBean">
<constructor-arg ref="globalSystemConfiguration"/>
</bean>
によってロード参照、このconfigFactoryBean
データベースからプロパティをロードするdatasource
を使用します。
私はこれを行うと、私は次の例外があります
java.lang.ClassNotFoundException: ${database.driverClassName}
私の分析では、その最初のコンテキストプロパティのプレースホルダからプロパティを解決する前にdatasource
をロードしようとしているということです。私は間違っているかもしれません。または、春のプロファイル変数が正しく解決されていない可能性があります。
誰でもこの問題を解決するのに手伝ってください。
おかげ Akki
は、それが動作しません0 –
号に順序を設定してみてください。私は最初の1つの順序を0に変更しても、同じエラーがあります。 – Abby
ああ待って、あなたのデータベースドライバを見つけることができません。クラスパスに追加しましたか? –