Hi folks, I'm using Camel Rest (with *restlet* component) and I have the following APIs:
rest("/order") .get("/{*orderId*}").produces("application/json") .param().dataType("int").type(RestParamType.path).name("orderId").endParam() .route() .bean(OrderService.class, "findOrderById") .endRest() .get("/*customer*").produces("application/json").route() .bean(OrderService.class, "findOrderByCustomerId") .endRest() The problem is that the */order/customer* doesn't works (see Exception below). *The parameters for /customer comes from JWT*... java.lang.String to the required type: java.lang.Long with value customer due Illegal characters: customer I think that camel is confusing the ../{orderId} parameter with .../customer. If I change the /customer for /customer/orders it's works. The same idea in Spring Boot could have done with: @RequestMapping("/order/{*orderId*}") public Order getOrder(@PathVariable Long orderId) { return orderRepo.findOne(orderId); } @RequestMapping("/order/*customer*") public List<Order> getOrder() { return orderRepo.listOrderByCustomer(1l); } Any idea about what's happening?