我可以在 mule3 的组件中获取像 #[header:originalFilename] 这样的文件名吗
我
<gzip-compress-transformer/>
<base64-encoder-transformer/>
在文件连接器之后使用,然后编写一个组件来处理gzip+base64内容。 如何获取组件中的文件名?
I use
<gzip-compress-transformer/>
<base64-encoder-transformer/>
after a file connector, and then write a component to deal with the gzip+base64 content.
How can i get the file name in the component?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
请注意,我们在 Mule 3 中引入了注释来进行运行时注入,这意味着您可以指定如何调用组件而无需变压器,即
public void save(@Payload String fileContents, @InboundHeaders("originalFilename") StringoriginalFilename)
请参阅: http://www.mulesoft.org/documentation/display/MULE3USER/Creating+Service+Objects+and+Transformers+Using+Annotations
Note that we introduced annotations in Mule 3 for doing runtime injection, this means you can specify how to invoke a component without needing transformers i.e.
public void save(@Payload String fileContents, @InboundHeaders("originalFilename") String originalFilename)
See: http://www.mulesoft.org/documentation/display/MULE3USER/Creating+Service+Objects+and+Transformers+Using+Annotations
您的组件是否实现 可调用?如果不是,你想让你的组件 Mule 不知道吗?
根据您对这些问题的回答,存在不同的选项:
Does your component implement Callable? If not, do you want to keep your component Mule-unaware?
Based on your answers to these questions, different options exist:
[message.outboundproperties[originalFilename]]
通过此表达式可以获取组件中的原始文件名。
[message.outboundproperties[originalFilename]]
with this expression you can get the original file name in the component.