Java 驼峰路线-忽略返回值

Java 驼峰路线-忽略返回值,java,spring,jakarta-ee,apache-camel,Java,Spring,Jakarta Ee,Apache Camel,我有以下路线: from("INPUT_QUEUE") .routeId("Test") .beanRef("logService", "save") .beanRef("deserialiser", "deserialise") LogService中的save方法返回一个整数。我不希望将此整数传递给反序列化方法。我需要传递来自输入队列的json 对于这个简单的问题,我们表示感谢和歉意,因为我是骆驼队的新手。您可以将您的保存定义为使用类

我有以下路线:

    from("INPUT_QUEUE")
        .routeId("Test")
        .beanRef("logService", "save")
        .beanRef("deserialiser", "deserialise")
LogService中的save方法返回一个整数。我不希望将此整数传递给反序列化方法。我需要传递来自输入队列的json


对于这个简单的问题,我们表示感谢和歉意,因为我是骆驼队的新手。

您可以将您的保存定义为使用类似Exchange的参数

 save(yourExistingArguments, Exchange exchange){
     //performYourOperations and get your integer

     //However, do not set the integer in the exchange body.

     // exchange.getIn().setBody(integer)

     // Do not return the integer. Set the integer as state and make it accessible through getter and setter

仅此而已。消息按原样传递,没有整数

您可以将save定义为具有类似Exchange的参数

 save(yourExistingArguments, Exchange exchange){
     //performYourOperations and get your integer

     //However, do not set the integer in the exchange body.

     // exchange.getIn().setBody(integer)

     // Do not return the integer. Set the integer as state and make it accessible through getter and setter

仅此而已。消息按原样传递,没有整数

否。bean组件将使用方法的返回值作为新消息体

但是,您可以使用语言组件并将其设置为“不转换”,类似于

.to("language:bean:logService.save?transform=false")
我不记得确切的语法,但我认为可以使用点来分隔要调用的方法名,如上图所示


不,bean组件将使用方法的返回值作为新的消息体

但是,您可以使用语言组件并将其设置为“不转换”,类似于

.to("language:bean:logService.save?transform=false")
我不记得确切的语法,但我认为可以使用点来分隔要调用的方法名,如上图所示

使用允许将同一消息路由到多个端点并以不同方式处理它们的模式:

from("INPUT_QUEUE")
    .routeId("Test")
    .multicast()
        .beanRef("logService", "save")
        .beanRef("deserialiser", "deserialise")
    .end();
使用允许将同一消息路由到多个端点并以不同方式处理它们的模式:

from("INPUT_QUEUE")
    .routeId("Test")
    .multicast()
        .beanRef("logService", "save")
        .beanRef("deserialiser", "deserialise")
    .end();

您还可以显示save方法的实现吗?您还可以显示save方法的实现吗?我认为您的基本意思是“save”方法应该返回“void”。这显然是可行的-我想知道是否有办法不更改“save”方法的签名。为什么不创建一个包装器方法来调用您的这个方法并接受返回值,但仍然返回一个void?因为您似乎有设计约束,您还必须在问题中指定它们。我认为您的基本意思是“save”方法应该返回“void”。这显然是可行的-我想知道是否有任何方法可以不更改“save”方法的签名。为什么不创建一个包装器方法来调用您的这个方法并接受返回值,但仍然返回一个void?既然您似乎有设计约束,那么您还必须在问题中指定它们。