Java 特定数量请求后的驼峰路由循环

Java 特定数量请求后的驼峰路由循环,java,apache-camel,endpoint,Java,Apache Camel,Endpoint,我有一个骆驼路线的问题,这几天我一直在努力解决 由于我不是这个技术问题的专家,可能会遗漏您需要了解的信息 首先,我的路由的目标是通过端点连接到远程服务器,通过jaxb编组从xml请求中请求xml响应 这条路线没有什么特别之处,如下所示: routeX.from("direct:requeteObjects) .setHeader("element") .constant(element) .to("bean:importStructureI2VGestionnaireImpl?method=se

我有一个骆驼路线的问题,这几天我一直在努力解决

由于我不是这个技术问题的专家,可能会遗漏您需要了解的信息

首先,我的路由的目标是通过端点连接到远程服务器,通过jaxb编组从xml请求中请求xml响应

这条路线没有什么特别之处,如下所示:

routeX.from("direct:requeteObjects)
.setHeader("element")
.constant(element)
.to("bean:importStructureI2VGestionnaireImpl?method=sendRequestObjects)                 
.to(endpoint)
.to("bean:importGestionnaireImpl?method=" + getObjects)
服务器按片段发送响应:例如,我预计有3000个对象,由30个对象组成的包接收

我创建请求“sendRequest”的方法被更新,并请求下一个对象

在处理响应之后,我将此请求发送回端点,端点获取响应,该响应被发送到处理响应的getObjects方法

一切都很顺利,我得到了回应。但是在5个请求/响应之后,在进入端点之后,什么也没有发生。在调试代码时,我的路由中似乎有一个循环,因为代码在AsyncProcessor类、进程方法等中继续运行。没有日志,什么都没有。它不会停止

我不知道为什么会这样。我想可能是因为我使用了相同的路线定义。因此,我为每个请求创建了一个路由,停止并删除旧的路由。有了这个,我得到了6个答案。但是,同样的问题也发生了

我尝试设置上下文最大端点缓存大小和上下文最大缓存池大小,将默认值乘以10。我检查了这些值是否被考虑在内:它们是。但我还是遇到了同样的问题

此外,exchange对象始终是新的,因此我的响应不会堆积在一个大的exchange对象中

你知道问题出在哪里吗?背景会变得太大吗?还是终点?我应该去哪里看

谢谢你的回答。如果你需要更多的信息,我很乐意补充

PS:我尝试在这个主题中应用答案,但没有改变:-(