以下是我的应用程序的工作原理:
用户开始填写表单并提交。此操作启动第一个执行某些处理的camelroute,直到向用户返回“请保留,处理您的请求...”类型的视图。
此视图发送一个AJAXRequest,触发第二条路径启动。
第一条路径使用上下文数据丰富了一个对象,我需要了解第二条路径。如何实现这一目标?
它存储在第一个路径的头部in.header中,并且它有很多参考字段,这些参考字段的深度很低,这使得将它们作为Html表单请求的一部分发送时不那么快乐
是否有一种在路线之间发送对象的好方法?
答案 0 :(得分:0)
通常,JMS是在异步执行的路由之间共享数据的不错选择。您的用例还需要将丰富的消息与后续请求(通过requestId等)相关联。
一种选择是使用JMS selectors在第二条路线中提取相应的丰富消息。
另一个选项(而不是使用JMS)是使用内存缓存(camel-cache或camel-hazelcast)将丰富的消息存储在内存中,然后在第二条路径中检索/清除它们。 / p>
[todo:添加示例]