【发布时间】:2014-11-20 06:19:26
【问题描述】:
我想知道是否有办法将 EDI 文件转换为 mule 中的其他格式。我需要从 EDI 转换为 XML 。我可以使用带有 Mule 的 smooks 插件来做到这一点。想知道在 Mule 中是否有更清洁的方法,比如使用 datamapper。请提出建议。
【问题讨论】:
标签: mule
我想知道是否有办法将 EDI 文件转换为 mule 中的其他格式。我需要从 EDI 转换为 XML 。我可以使用带有 Mule 的 smooks 插件来做到这一点。想知道在 Mule 中是否有更清洁的方法,比如使用 datamapper。请提出建议。
【问题讨论】:
标签: mule
恐怕 smooks 社区扩展看起来已经被废弃了,但是您可以使用这样的 Java 转换器轻松进行转换:
public abstract class EdiSmooksTransformer extends AbstractTransformer
{
private Smooks smooks;
public EdiSmooksTransformer() throws IOException, SAXException
{
smooks = new Smooks();
smooks.setReaderConfig(new EDIReaderConfigurator("MY_EDI_CONFIG_FILE_PATH_HERE"));
}
@Override
protected Object doTransform(Object src, String enc) throws TransformerException
{
StringResult stringResult = new StringResult();
smooks.filterSource(new StreamSource((BufferedReader) src), stringResult);
return stringResult.getResult();
}
}
【讨论】: