Post Apache Camel exchange主体到URI查询参数

Post Apache Camel exchange主体到URI查询参数,post,apache-camel,query-parameters,Post,Apache Camel,Query Parameters,我有一个apache camel路由,它正在发出HTTP POST请求,即 from(...).setHeader(Exchange.HTTP_METHOD, constant(POST)).to("http4://myUrl?..."); 请求URL包括查询参数(我知道这对POST来说是不寻常的,但我在这里没有选择),我需要根据存储在正文中的交换详细信息填充这些参数 i、 e.主体为POJO,如下所示: public class Params { String param1;

我有一个apache camel路由,它正在发出HTTP POST请求,即

from(...).setHeader(Exchange.HTTP_METHOD, constant(POST)).to("http4://myUrl?...");
请求URL包括查询参数(我知道这对POST来说是不寻常的,但我在这里没有选择),我需要根据存储在正文中的交换详细信息填充这些参数

i、 e.主体为POJO,如下所示:

public class Params {
    String param1;
    int param2;
    ....
    //etc. etc. including getters and setters
}
其中,每个字段都是基元或字符串,并直接引用等效的查询参数:

http4://myUrl?param1=...&param2=...&...
是否有一种方法可以避免手动定义URL上的每个参数,而是自动将exchange主体映射到请求中的查询参数


我需要这样做的原因是一些查询参数是可选的,应该根据exchange正文的内容进行填充。

您可以设置标头exchange.HTTP\u查询,并将查询参数分隔开


而且不可能将消息体的字段自动映射到URI参数(不包括魔术)。您需要构建一些代码来计算URI查询,并用
&
分隔值,并将其设置为
HTTP\u查询
标头。

您可以使用以&分隔的查询参数设置标头Exchange.HTTP\u查询,我想知道是否有一种方法可以将对象映射到body来查询参数,而不必在代码中指定每个参数。如果不是,那是一个很好的方法,谢谢。不,没有神奇的自动映射消息体字段来查询参数。谢谢克劳斯(又名骆驼甲骨文),如果你想添加上述两个注释作为正确的答案,我会标记为接受赏金,如果你想的话。