2012-02-29 180 views
1

我正在使用drools决策表来发射DRL。 现在,虽然解析Excel表偶尔获取此异常。 有趣的是,drools能够解析excel工作表,但是下次很简单,如果不在代码或excel工作表中进行任何更改,就无法识别该格式。在drools中获取DecisionTableParseException

(问题听起来可能有点模糊,但即使我无法找到在此的任何模式)

org.drools.template.parser.DecisionTableParseException: Failed to open Excel stream, please check that the content is xls97 format. 
     at org.drools.decisiontable.parser.xls.ExcelParser.parseFile(ExcelParser.java:94) 
     at org.drools.decisiontable.SpreadsheetCompiler.compile(SpreadsheetCompiler.java:89) 
     at org.drools.decisiontable.SpreadsheetCompiler.compile(SpreadsheetCompiler.java:68) 
     at com.flipkart.inventory.regPlanning.workers.ItemRuleProcessor.init(ItemRuleProcessor.java:57) 

回答

0

这是一个IOException的包装例外:

https://github.com/droolsjbpm/drools/blob/master/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/xls/ExcelParser.java#L94

检查根IOException的更多信息的原因,但我的猜测是,你有文件访问问题。或者,检查您正在使用的JXL版本,并确保它是正确的。

+0

谢谢。让我检查访问的事情。顺便说一句JXL版本是2.6.10,它是由drools本身下载的(使用maven),所以希望版本不匹配不应该在那里。 – 2012-02-29 17:58:10