1

Spring Security Core 1.2.7.3 プラグインを使用していますが、デプロイしようとすると次のエラーが発生します。

Error occurred during deployment: Exception while loading the app : 
java.lang.IllegalStateException: ContainerBase.addChild: start: 
org.apache.catalina.LifecycleException: 
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 
'transactionManagerPostProcessor': Initialization of bean failed; nested exception
 is     org.springframework.beans.factory.BeanCreationException: Error creating bean 
with name 'transactionManager': Cannot resolve reference to bean 'sessionFactory' while
setting bean property 'sessionFactory'; nested exception is 
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 
'sessionFactory': Cannot resolve reference to bean 'hibernateProperties' while setting 
bean property 'hibernateProperties'; nested exception is 
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 
'hibernateProperties': Cannot resolve reference to bean 'dialectDetector' while    
setting 
bean property 'propertie .... msg.seeServerLog 

アプリケーションは、netbeans 内から実行すると正常に動作しますが、デプロイしようとするとエラーが発生します。'mysql:mysql-connector-java:5.1.16'BuildConfig.groovy ファイルの依存関係のコードをクリーニングして、コメントを外してみました。/lib フォルダー内にインストールした Oracle jdbc ドライバーを使用しています。

これは、Oracle jdbc ドライバーが見つからないことに関係していると推測しています。

更新:以下に生産閉鎖を追加しました

production {
    dataSource {
        url = "jdbc:oracle:thin:@MYSERVERNAME.com:xxxx:xxxxxxx"
        pooled = true
        properties {
           maxActive = -1
           minEvictableIdleTimeMillis=1800000
           timeBetweenEvictionRunsMillis=1800000
           numTestsPerEvictionRun=3
           testOnBorrow=true
           testWhileIdle=true
           testOnReturn=true
           validationQuery="SELECT 1"
        }
    }
}
4

1 に答える 1

1

を確認してください。DataSource.groovyおそらく、productionクロージャーに問題があります。NetBeans 内で実行する場合、おそらく開発環境を使用していますが、war を構築する場合、Grails は実稼働環境を使用します。IDE 内でフラグを設定-Dgrails.env=productionして、同じ問題が発生するかどうかを確認できます。動作する場合は、Glassfish の問題であることがわかります。失敗する場合は、環境構成の問題であることがわかります。

編集:

これをプロダクションクロージャーに追加してみてください:

driverClassName = "oracle.jdbc.driver.OracleDriver"
dialect = "org.hibernate.dialect.Oracle10gDialect"

または、使用している Oracle のバージョンに適した方言です。

于 2012-06-12T19:04:58.047 に答える