1

我最近将我的 Smooks 应用程序从 1.4 升级到 1.5.1,但我不断收到以下异常:

处理 EDI 文件 org.milyn.cdr.SmooksConfigurationException 时出错:在类“org.milyn.smooks.scripting.groovy.GroovyContentHandlerFactory”上调用@Initialize 方法“initialize”时出错。

我对 Smooks 和 Groovy 很陌生,但这是我的代码的摘录,它在 1.4 版中运行。我的类路径中还有所有 1.5.1 类,包括我尝试加载的 1.5 EDI 定义。

Smooks smooks = null;
try { 
 smooks = new Smooks();
}
catch(Exception exception) { System.out.println("Error " + exception); }  
try { 

smooks.setReaderConfig(new UNEdifactReaderConfigurator("urn:org.milyn.edi.unedifact:d01b-mapping:*"));  

// Create an exec context - no profiles....

ExecutionContext executionContext = smooks.createExecutionContext();
DOMResult domResult = new DOMResult();

// Configure the execution context to generate a report...

executionContext.setEventListener(new HtmlReportGenerator("EDI/reports/report.html"));

smooks.filterSource(new StreamSource((InputStream) bufferedinputstream), domResult);

从 GroovyContentHandlerFactory 中提取

@Initialize 
public void initialize() throws IOException { 
String templateText = StreamUtils.readStreamAsString(getClass().getResourceAsStream("ScriptedGroovy.ftl")); 
classTemplate = new FreeMarkerTemplate(templateText);

任何帮助或想法将不胜感激,因为我花了几个小时试图弄清楚这一点。

干杯,马特

4

0 回答 0