我想知道是否有办法将EDI文件转换为mule中的其他格式。我需要从EDI转换为XML。我可以使用带有骡子的smooks插件来做到这一点。想知道在Mule中是否有更简洁的方法,比如使用datamapper。请建议。
答案 0 :(得分:0)
我担心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();
}
}