Hi

Because how servlets work. For example if you develop a web app (as
war) then you cannot via code configure the servlet mappings, you
specify those in the web.xml).
spring-boot may give a little opportunity to do this, but its there
are many other servlet runtimes, so you cannot make it general.


On Mon, Nov 23, 2020 at 7:59 AM Federico Trotto
<[email protected]> wrote:
>
> i am new to camel. i am doing a project in spring-boot using camel for
> routes. I noticed that when I go to SwaggerUi to see the correct
> functioning of my Post calls the contextPath of the routes does not work:
>
> public void configure() {
>
>         restConfiguration().component("servlet").contextPath("service/");
>
>         rest("/ocs")
>             .post("/homologation")
>                 .id(camelRoutesIdConfig.getHomologationRequestRouteId())
>                 .consumes("application/json")
>                 .produces("application/json")
>                 .param()
>                     .name("IntegrationRequestDto")
>                     .type(RestParamType.body)
>                     .required(true)
>                     .description("attivazione nuovo contratto sul portale")
>                 .endParam()
>                 .to("direct:homologation")
>
> }
>
> This problem does not occur if in the application.yml I specify the
> contextPath like this:
>
> camel:
>   rest:
>     component: servlet
>     binding-mode: json
>     enable-cors: true
>     data-format-property:
>       prettyPrint: false
>      component:
>     servlet:
>       mapping:
>         context-path: /service/*
>
> When I make my call Post in one case it works, while in the case of
> ContextPath in routes it doesn't recognize the command and gives
>
> {
>   "timestamp": "2020-11-22T17:44:26.701+0000",
>   "status": 404,
>   "error": "Not Found",
>   "message": "Not Found",
>   "path": "/service/ocs/homologation"
> }
>
> Why is there this problem? Why am I forced to also specify in the
> application.yml instead of using it only once in the routes? Thanks to
> everyone for a possible answer



-- 
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2

Reply via email to