Mule REST 组件 Return 类型

Mule REST Component Return type

我正在尝试在 Mule Flow 中实现 REST 组件,我也能够公开 REST 服务并且响应也返回给客户端。但是当我让 Mule Java 组件访问 REST 组件响应的属性时,我无法做到这一点。下面是我的 Mule 消息处理器的代码,

public class RestResponseProcessor implements Callable{

@Override
public Object onCall(MuleEventContext eventContext) throws Exception {
    Object messagePayload = eventContext.getMessage().getPayload();
    System.out.println("Message payload class is  " + messagePayload.getClass());
    org.mule.module.jersey.JerseyResourcesComponent jerseyResponse = (org.mule.module.jersey.JerseyResourcesComponent) messagePayload;
    System.out.println("jerseyResponse.getClass() is  " + jerseyResponse.getClass());
    return eventContext;
}

}

第一个系统输出的输出是 Message payload class is class org.mule.module.jersey.JerseyResourcesComponent 但是当我尝试将它转换为 org.mule.module.jersey.JerseyResourcesComponent 对象时,它给出了 classCastException,java.lang.ClassCastException: org.mule.module.jersey.JerseyResourcesComponent cannot be cast to org.mule.module.jersey.JerseyResourcesComponent class 名称后的 $2 是什么意思,可能的解决方案是什么。

基本上,在将响应发送给客户端之前,我会尝试根据 REST 组件响应来路由我的消息。

希望我的问题很清楚。

我从 Mule 论坛得到了答案。

$2 是由 Jersey 组件创建的 org.mule.api.transport.OutputHandler 类型的匿名 class。

我尝试使用 "Byte Array To String" 并且成功了。它解决了我的目的。