在SpEL - Spring FTP动态远程目录创建中引用Map元素



我使用spring集成ftp的出站通道适配器

<int-ftp:outbound-channel-adapter id="ftpOutAdapterAutoCreate"
session-factory="ftpSessionFactory" channel="outChannel"
remote-directory-expression="headers.['remotedir']" charset="UTF-8" />

在我的java代码中,我在头中设置远程目录。

org.springframework.integration.Message<File> messageA=
org.springframework.integration.support.MessageBuilder
.withPayload(reqFile).setHeader("remotedir",  "/errorOrders").build();

部署

时显示的错误信息
org.springframework.expression.spel.SpelParseException: EL1049E:(pos 7): 
Unexpected data after '.': 'lsquare([)'

当您引用Map(消息头是Map)的元素时,没有句号。语法为headers['remotedir'] ([前无点)。

同样,如果你的地图键没有.,你也可以使用headers.remotedir

最新更新