Custom

Mule ESB中entry-point-resolver的使用(8) Custom Entry Point Resolver

浪尽此生 提交于 2019-12-03 10:28:59
前面介绍了6种Mule ESB提供的Entry Point Resolver,如果在实际应用中觉得这些Entry Point Resolver不能满足实际需要,可以自定义Entry Point Resolver。自定义的Entry Point Resolver类必须继承抽象类 org.mule.model.resolvers.AbstractEntryPointResolver 我们这里实现一个自定义Entry Point Resolver,根据用户传入的两个操作数和操作符参数,分别执行不同的计算方法,返回操作结果。 我们计算传入的参数是json格式 { "operand1":13, "operand2":40, "operator":"add" } 我们首先定义一个新的Flow,命名为Caculate_Flow 入口的Http Listener节点仍使用8081端口,为了和前面的Flow区别,Path改为Calc 流程中的Byte Array to String Transformer是把Http请求的InputStream类型的Payload转换为String类型的Payload。Json Translate Transformer使用了我们自定义的Transformer类CalcTransformer,把json报文转换为Object数组 public class