アプリケーションをセットアップしようとしています。これにより、データベースが任意の環境にデプロイされたときにデータベースが自動的にアップグレードされるため、Spring構成に以下を追加しました。
<bean id="datasource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
<property name="url" value="jdbc:oracle:thin:@${db.host}:${db.port}:${db.database}" />
<property name="username" value="${db.username}" />
<property name="password" value="${db.password}" />
<property name="maxActive" value="4" />
<property name="maxWait" value="5000" />
<property name="defaultAutoCommit" value="false" />
<property name="defaultReadOnly" value="false" />
<property name="validationQuery" value="select '1' from DUAL" />
</bean>
<!-- ADDED IN AN ATTEMPT TO FIX THE PROBLEM -->
<bean id="flyway-init" class="com.googlecode.flyway.core.Flyway" init-method="init">
<property name="dataSource" ref="dataSource" />
</bean>
<bean id="flyway" class="com.googlecode.flyway.core.Flyway" init-method="migrate" depends-on="flyway-init">
<property name="dataSource" ref="datasource"/>
</bean>
しかし、JBoss 7で実行すると、次のエラーが発生します。
com.googlecode.flyway.core.validation.ValidationException: Found non-empty schema 'WMYERS' without metadata table! Use init() first to initialize the metadata table.
私はすでにデータベースに対してflywayclean-migrateを実行しているので、データベースはすでにセットアップされて準備ができており、SCHEMA_HISTORYテーブルが存在します。何かアイデアはありますか?