0
나는 형식의 요청받는 낙타 REST 엔드 포인트가 : - 요청 본문에 method
필드의 값을 기반으로낙타 - JSON 요청 본문에 따라 콘텐츠 기반 라우팅
{"method" : "getHello"}
내가 원하는을 요청을 다른 경로로 라우트하십시오. 그래서 나는 다음과 같은 것을 시도 : -
from("jetty:http://localhost:8888/hello").unmarshal().json(JsonLibrary.Jackson, RouteRequest.class)
.choice()
.when(method(DynamicRouter.class, "route").isEqualTo("getHello")).to("stream:out")
.otherwise()
.log("Processing Failed");
동적 라우터 클래스는 다음과 같다 : -
public class DynamicRouter {
public String route(RouteRequest req) {
switch (req.getMethod()) {
case "getHello":
return "xxxx";
}
return null;
}
}
심지어 내가 route()
에서 xxxx
를 반환하고 있지만 술어 아래 항상 진실하고 그것을 평가하고있다하지만 . 결코 그렇지 않다.
isEqualTo("getHello")).to("stream:out")
내가 잘못하고있는 것을 누군가가 나에게 알릴 수 있습니까? 또한 내가 성취하려고 노력하는 것의 더 좋은 방법이 있습니까?
나는 예상대로 camel 2.16.3
질문을 삭제하면됩니다. –