Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

364
Views
How to use the context Path in Camel routes?

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

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

It is right that it works like this. the contextPath configuration in the RestConfiguration is for pure XML-API documentation. To activate the contextPath in your calls Get, Post, Put ... you need to specify it in the application.properties. Apache Camel's documentation on using the servlet may help you

over 4 years ago · Santiago Trujillo Report

0

add property configuration on application.properties :

camel.component.servlet.mapping.context-path=/camel-rest-example/*

and then call

http://localhost:8080/camel-rest-example/${your-resource-here}

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!