У меня есть маршрут Camel, который вызывает веб-службу, и один из параметров, ожидаемых этой службой, - это параметр URL, содержащий список значений, т.е. p1
в myhost/myuri?p1=foo&p1=bar
.
Я помещаю это в toD
URI, так как значения параметров должны быть динамическими, т.е. <camel:toD uri="http4://myhost/myuri?p1=foo&p1=bar" >
(пропущены параметры и переменные Camel для краткости).
Camel преобразует это в p1=%5Bfoo%2C+bar%5D
(кодированный в URL p1=[foo, bar]
), что не принимается серверной службой. У меня нет контроля над этим бэкэнд-сервисом, и я не могу ожидать, что его интерфейс изменится в будущем.
Есть ли способ заставить Camel вызывать бэкэнд-сервис так, как я хочу, вместо того, чтобы собирать параметрс несколькими значениями в виде массива?