drools DRL类路径资源

时间:2012-10-08 19:05:06

标签: grails drools drools-planner optaplanner

我有一个带有XMLSolverFactory的grails应用程序,使用下面的代码从./myapp/grails-app/conf/加载它的XML配置文件。但它无法从同一路径中找到DRL文件。如果在容器中运行,我怎样才能找到XML配置的Solver来查找类路径.DRL资源?

def InputStream stream = this.getClass().classLoader.getResourceAsStream("nurseRosteringSolverConfig.xml")
solverFactory.configure(stream);

配置XML代码段

<scoreDrl>nurseRosteringScoreRules.drl</scoreDrl>

抛出错误

scoreDrl (nurseRosteringScoreRules.drl) does not exist as a classpath resource

1 个答案:

答案 0 :(得分:0)

getClass()代码可能为您的类的包添加前缀。

假设您的类文件位于包org.foo.bar中,而您的nurseRosteringScoreRules.drl也在该包中,那么您可以写:

<scoreDrl>/org/foo/bar/nurseRosteringScoreRules.drl</scoreDrl>