Я новичок в Camel и пытаюсь получить ответ от маршрута Netty4, используя запрос POST.Я хотел бы отправить JSON и вернуть строку, извлеченную из тела.
Мои настройки для отдыха следующие:
public class Server extends RouteBuilder {
@Override
public void configure() {
String listenAddress = "0.0.0.0";
int listenPort = 8080;
restConfiguration()
.component("netty4-http")
.scheme("http")
.host(listenAddress)
.dataFormatProperty("prettyPrint", "true")
.bindingMode(RestBindingMode.auto)
.port(listenPort);
rest("/")
.post()
.consumes("application/json; charset=UTF-8")
.to("direct:post");
}
}
В рамках моего маршрута на верблюде я хотел бы отправитьобратно сообщение, используя:
@Component
public class RestRoute extends RouteBuilder {
@Autowired
CamelContext context;
@Override
public void configure() {
from("direct:post")
.log("New Request")
.streamCaching()
.setHeader(Exchange.HTTP_METHOD,constant(org.apache.camel.component.http4.HttpMethods.POST))
.setBody().jsonpath("$.Text") // extract text from JSON
.to("http4://0.0.0.0:8080?bridgeEndpoint=true");
Однако я получаю следующую ошибку: org.apache.camel.http.common.HttpOperationFailedException: HTTP operation failed invoking http://0.0.0.0:8080 with statusCode: 500
Буду признателен за некоторую помощь!