如何将exchange.getIn().getMessageId()
设置为变量并将ContextParam
中的cTalendJob
传递给我的作业?我可以像“bla bla bla”那样传递String,但是当我尝试传递变量之类的时候
`
${myVariable},
#{myVariable},
{myVariable},
$myVariable,
context.myVariable
我得到错误myVariable无法解析变量。
有人知道怎么做吗?
答案 0 :(得分:0)
您可以从配置为tRouteInput
的路径中获取作业中的变量。
在tRouteInput
写这样的东西:
${header.typesOfParametre.nameOfParametre}
如果你把变量放在标题中,标题......
我希望我帮助你
答案 1 :(得分:0)
如果像我一样,您不想更改作业的tRouteInput
组件,只需在路线中为${myvariable}
设置作业的上下文参数,那么就会有一点点这种丑陋的做法。
我想从消息头设置context参数,所以我创建了一个cSetHeader
组件并设置了一个与上下文参数名称匹配的头,这允许您选择表达式语言,因此在简单中您可以拥有${header.headerName}
。
在cTalendJob
的“高级设置”标签中,选中“传播标题”复选框,这将填充与邮件标题名称完全匹配的所有上下文变量。
这对我有用,但为了完整性和安全性,您可能需要确保删除任何不所需的标题,以防它们覆盖Talend作业中的其他上下文变量。< / p>