0
我正在處理程序的兩個部分。一個創建小的常規腳本,另一個在Job中執行它們。每個腳本都用於將信息從地圖轉換爲域對象。然後作業將保存域對象以供將來使用。在grails中執行腳本作業
這是一個小例子。
域
class Report {
Date date
Country country
}
地圖
Map<String, String> map = new HashMap<String, String>();
map.put("date", "2015-04-21 11:31:11");
map.put("country", "United States");
日期腳本
String script = "x.date = Date.parse('y-M-d h:m:s', y['date'])"
目前正在執行的腳本USI ng Eval。
Eval(report, map, script)
還有其他更復雜的腳本需要查詢信息並根據值做出決定。
日期腳本工作正常,但是當國家腳本執行時,我得到一個錯誤。
國家腳本
String script = "import app.Country\nx.country = Country.findByName(y['country'])"
錯誤
Script1.groovy: 1: unable to resolve class app.Country
這似乎是國家類是沒有得到在調用評估和演示加載。我如何在Eval中進行導入?我應該使用Eval還是GroovyShell?