Just for sharing, here the code working:

@Test
    public void publishHttpCamelContextWithDefinitionTest() throws
Exception {
        CamelContext camelContext = new DefaultCamelContext();
        Assertions.assertNotNull(camelContext);

        DefaultCamelContext.class.cast(camelContext).setName("camel-labs");
        camelContext.start();
        Assertions.assertTrue(camelContext.getStatus().isStarted());
        System.out.println("camel context started");

        final RouteDefinition definition = new RouteDefinition();
       
definition.from("jetty:http://localhost:9090/labs";).id("jetty-example").
                setHeader(Exchange.HTTP_RESPONSE_CODE,constant(200)).
                setBody(constant("it works well!"));

       
DefaultCamelContext.class.cast(camelContext).addRouteDefinition(definition);
        System.out.println("camel routes with definition jetty added ->
http://localhost:9090/labs";);
        Thread.sleep(10000L);
    }

regards,

François
fpa...@apache.org

Le 20/05/2019 à 08:47, Francois Papon a écrit :
> Hi Claus,
>
> It works very well now :)
>
> Thanks for your help!
>
> regards,
>
> François
> fpa...@apache.org
>
> Le 20/05/2019 à 08:10, Claus Ibsen a écrit :
>> Hi
>>
>> You should add the definition via camel context api and not try to add
>> it via the route builder.
>>
>>
>> On Mon, May 20, 2019 at 5:47 AM Francois Papon
>> <francois.pa...@openobject.fr> wrote:
>>> Hi,
>>>
>>> I'm trying to use a RouteDefintion to configure a RouteBuilder and it
>>> doesn't work.
>>>
>>> It works by setting the route in the first test but the endpoint is not
>>> publish in the second test...
>>>
>>> Any ideas?
>>>
>>>
>>> @Test
>>>     public void publishHttpCamelContextTest() throws Exception {
>>>         CamelContext camelContext = new DefaultCamelContext();
>>>         Assertions.assertNotNull(camelContext);
>>>
>>>         DefaultCamelContext.class.cast(camelContext).setName("camel-labs");
>>>         camelContext.start();
>>>         Assertions.assertTrue(camelContext.getStatus().isStarted());
>>>         System.out.println("camel context started");
>>>
>>>         RouteBuilder routeBuilder = new RouteBuilder() {
>>>             @Override
>>>             public void configure() throws Exception {
>>>
>>>                 from("jetty:http://localhost:9090/labs";).
>>>                         id("jetty-example").
>>>
>>> setHeader(Exchange.HTTP_RESPONSE_CODE,constant(200)).
>>>                         setBody(constant("it works well!"));
>>>             }
>>>         };
>>>         camelContext.addRoutes(routeBuilder);
>>>         System.out.println("camel routes jetty added ->
>>> http://localhost:9090/labs";);
>>>         Thread.sleep(10000L);
>>>     }
>>>
>>>     @Test
>>>     public void publishHttpCamelContextWithDefinitionTest() throws
>>> Exception {
>>>         CamelContext camelContext = new DefaultCamelContext();
>>>         Assertions.assertNotNull(camelContext);
>>>
>>>         DefaultCamelContext.class.cast(camelContext).setName("camel-labs");
>>>         camelContext.start();
>>>         Assertions.assertTrue(camelContext.getStatus().isStarted());
>>>         System.out.println("camel context started");
>>>
>>>         final RouteDefinition definition = new RouteDefinition();
>>>
>>> definition.from("jetty:http://localhost:9090/labs";).id("jetty-example").
>>>                 setHeader(Exchange.HTTP_RESPONSE_CODE,constant(200)).
>>>                 setBody(constant("it works well!"));
>>>
>>>         RouteBuilder routeBuilder = new RouteBuilder() {
>>>             @Override
>>>             public void configure() throws Exception {
>>>                 System.out.println(definition);
>>>                 configureRoute(definition);
>>>             }
>>>         };
>>>         camelContext.addRoutes(routeBuilder);
>>>         System.out.println("camel routes with definition jetty added ->
>>> http://localhost:9090/labs";);
>>>         Thread.sleep(10000L);
>>>     }
>>>
>>> regards,
>>>
>>> --
>>> François
>>> fpa...@apache.org
>>>

Reply via email to