';消息无法解析或不是字段';Talend ESB的tmoOutput中出错
我正在使用TalendESB open studio的tMomOutput组件将XML消息插入Apache活动MQ';消息无法解析或不是字段';Talend ESB的tmoOutput中出错,talend,talend-mdm,Talend,Talend Mdm,我正在使用TalendESB open studio的tMomOutput组件将XML消息插入Apache活动MQ 使用XMLMap组件创建XML文档 使用tConvertType组件将XML文档转换为字符串 使用tMomOutput组件将字符串消息从tConvertType发送到活动MQ队列 它在tMomOutput组件处给了我以下编译错误 org.talend.designer.runprocess.ProcessorException:作业编译错误 至少作业“MQJobDemo”有编译错误
org.talend.designer.runprocess.ProcessorException:作业编译错误
至少作业“MQJobDemo”有编译错误,请修复并再次导出。
错误行:1238
详细信息:信息无法解析或不是字段
如果没有您的工作快照或工作流程描述,我将根据我的个人经验推断此问题的原因
当您试图引用某个不是作业“活动”部分的输入流或变量时,就会发生这种情况。考虑下面的流程:
tOracleInput--Main1->tMap--Main2->tOracleOutput
这里Main1和Main2分别是输入流和输出流。现在,如果Main1被重命名为“message”,那么将任何传入字段(比如ID)引用为message.ID就可以了。但是,如果您尝试在tMap中引用与messag.ID相同的字段,则会出现错误:messag无法解析或不是字段。这是因为“messag”没有引用任何实体
因此,我的建议是检查作业中使用该引用变量的所有实例,以及该特定引用变量是否在任何地方都可用。根据您的场景,它会给您带来错误,因为您没有从输入组件将任何字段映射到
tMOMOutput
。将tMap
放在t转换类型
和tMomOutput之间
您也可以通过另一种方式来实现,添加
tMap
组件,同时将XML文档映射到tMomOuput
将输出端变量设置为string
。这样您就不必专门使用tConvertType
。有一个编译错误
是一个有用的提示创建一个(请参阅)。我在tConvertType和tMoOutput之间添加了tMap,并映射了相应的字段,它成功了!