0

我一直在使用 Mule Devkit 实现我的自定义处理器。

我用“mule-devkit-archetype-generic”原型创建了项目。它给了我带有注释“@Module”和“@Processor”的课程

我可以将参数传递给我的处理器方法。

但是我无法在 @Processor 方法中访问 MuleMessage 和 Payload。

我怎样才能做到这一点?

4

1 回答 1

2

要访问有效负载,请使用:

@Payload final DESIRED_TYPE payload

替换DESIRED_TYPE为您想要的类型,Mule 会将当前有效负载自动转换为所需的类型。

例如,这为您提供了一个字节有效负载:

@Payload final byte[] payload

要访问 MuleMessage,您实际上是访问 MuleEvent 并从中获取消息。为此,您需要在方法@Inject上添加注释并向处理器方法@Processor添加参数。MuleEvent muleEvent

使用 Mule 3.8.1 更新 2017/08/31

如果您尝试@Processor使用@Inject. 错误消息指出,如果您只是在方法中添加MuleEventMuleMessage参数@Processor,DevKit 将正确注入参数。

于 2013-03-07T18:28:01.277 回答