Spring integration Spring集成存储过程出站网关
我对spring集成有以下要求Spring integration Spring集成存储过程出站网关,spring-integration,Spring Integration,我对spring集成有以下要求 接收web服务请求 创建自定义负载。(这将是service activator的输出) 在sql server中调用2个存储过程。第一个返回一个out参数。我必须使用这个out参数,以及自定义负载中的项目列表来将数据插入数据库 继续使用在步骤2中使用另一个服务激活器生成的有效负载生成响应消息 请告诉我是否可以使用jdbc存储过程出站网关实现步骤3。示例代码将非常有帮助。提前感谢…您所说的是“和Spring集成”,这是最重要的 因此,您应该调用充实子流来执行存储过程
充实
子流来执行存储过程,并将输出
返回到主流,以充实消息,而不破坏当前的有效负载
我们也有一个关于Enricher的问题。您所说的“和Spring集成”在这一问题上是最重要的
因此,您应该调用充实
子流来执行存储过程,并将输出
返回到主流,以充实消息,而不破坏当前的有效负载
我们也有一个关于Enricher的节目。嗨。谢谢你的回复。但我不懂“充实子流程”。这是否意味着要将service activator的输出传递给enricher,enricher在内部调用存储过程网关?不,您的带有自定义
负载的service activator
只将其结果发送给enricher
。它将消息传播到某个通道,在那里您有您的第一个过程。调用它时,只需回复回复频道
(不指定输出(回复)-频道时的选项)。结果将到达enricher
,可填充到您的自定义有效负载或标题中。等等。还有一个问题,如果链中的最后一个存储过程没有返回任何值(我使用的是int-jdbc:stored-proc-outbound-channeladapter),那么响应通道中就没有收到任何消息。但我需要将自定义负载发送到另一个service activator进行进一步处理。如何实现这一点?我的代码如下所示。第二个enricher调用一个不返回任何内容的过程。在这种情况下,我在ResultpChannel中没有得到任何输出。您可以将该
的频道设置为PublishSubscribebeChannel
,并向该频道添加一个
,以返回一些逻辑信息,这些信息可以确定该过程是否成功。这一个应该正好是第二个(例如,order=“2”
),以确保在procedure.Hi之后调用它。谢谢你的回复。但我不懂“充实子流程”。这是否意味着要将service activator的输出传递给enricher,enricher在内部调用存储过程网关?不,您的带有自定义负载的service activator
只将其结果发送给enricher
。它将消息传播到某个通道,在那里您有您的第一个过程。调用它时,只需回复回复频道
(不指定输出(回复)-频道时的选项)。结果将到达enricher
,可填充到您的自定义有效负载或标题中。等等。还有一个问题,如果链中的最后一个存储过程没有返回任何值(我使用的是int-jdbc:stored-proc-outbound-channeladapter),那么响应通道中就没有收到任何消息。但我需要将自定义负载发送到另一个service activator进行进一步处理。如何实现这一点?我的代码如下所示。第二个enricher调用一个不返回任何内容的过程。在这种情况下,我在ResultpChannel中没有得到任何输出。您可以将该
的频道设置为PublishSubscribebeChannel
,并向该频道添加一个
,以返回一些逻辑信息,这些信息可以确定该过程是否成功。这一个应该正好是第二个(例如,order=“2”
),以确保它将在过程之后被调用。