2010-02-08 57 views
5

我有一個外部java庫,我在我的Grails項目中使用。它需要一個通過Spring配置的數據源。但是,dataSource似乎無法從resources.groovy訪問。我如何訪問它?我使用的resources.groovy如下:如何在resources.groovy中使用Grails數據源?

beans = { 
eventDao(com.JavaClassRequiringDataSource) { 
    //dataSource = ref(dataSource, true) 
    dataSource = dataSource 
} 
} 

運行在一個例外應用程序的結果:

org.codehaus.groovy.runtime.InvokerInvocationException: groovy.lang.MissingPropertyException: 沒有這樣的屬性: 的類dataSource類:grails.spring.BeanBuilder

任何想法?

回答

7

根據http://www.grails.org/Spring+Bean+Builder你的方法應該是正確的。我只是做了一些Googleing,發現這應該這樣做(未經測試):

 
beans = { 
eventDao(com.JavaClassRequiringDataSource) { 
    dataSource = ref('dataSource', true) 
} 
} 

所以你不變量引用它,但名稱。 (來源:http://burtbeckwith.com/blog/?cat=23

+0

這樣做!該文檔顯示,像這樣的例子: anotherBean(AnotherBean){ 例如= REF(「$ {beanName}豆」 } 它與$ {}讓你覺得他們只是去混疊的變量名 – Mike 2010-02-08 16:22:38

+0

對於我接線的一些bean,我發現最好只做'ref('dataSource')'。將ref的第二個參數添加到引用的錯誤中,Grails在bean dataSource被定義的時候無法設置bean dataSource 。 – jonnybot 2013-12-12 15:16:35

相關問題