Thanks, Claus.  I am trying this in Wildfly Swarm, so I am not sure how
difficult it would be to use something like camel-netty4-http instead of
undertow, but I will look into it and I will let you know if the behavior
is improved.

On Tue, Jul 12, 2016 at 6:20 AM, Claus Ibsen <claus.ib...@gmail.com> wrote:

> The rest-dsl is syntax sugar.
>
> Its what the underlying component you use to handle what it can
> support. In this case you use undertow.
>
> So in camel-undertow its creating 2 routes, where one is for GET and
> the other is for PUT. So ideally it should be able from undertow to
> route to the one that matches.
>
> But I didn't write the camel-undertow code so it may have "bug" ;)
>
> You can try with another component like jetty/netty4-http/restlet to
> see how they work.
>
>
> On Tue, Jul 12, 2016 at 10:36 AM, Steve973 <steve...@gmail.com> wrote:
> > The error (if it is truly an error and not some mistake or
> misconfiguration
> > on my part) seems to happen when the same verb with the same path is used
> > in the Camel DSL.  The last verb specified in the chain seems to override
> > the verb before it.  For instance, if I change the line to have the "put"
> > before the "get", then the "get" works.  The way the command is in the
> > listing of the previous email resulst in the "put" working.  So, both
> rest
> > paths are valid, but something with the Camel DSL (or the way that I am
> > specifying them) results in not being able to have multiple verbs for the
> > same rest resource with the same parameter.  Also, if I change the "get"
> in
> > the example above to have the path of "new/{timesheetId"} then both verbs
> > work.
> >
> > Thanks,
> > Steve
> >
> > On Tue, Jul 12, 2016 at 12:43 AM, Charles Moulliard <ch0...@gmail.com>
> > wrote:
> >
> >> Hi Steve,
> >>
> >> I suggest that first, you verify the endpoint registered by Camel when
> the
> >> routes have been started, curl it and that you perform the same test
> using
> >> Jetty component.
> >>
> >> According to the REST Defintion, you try to reach the URL
> >>
> >> http://localhost:8181/timesheet/123 where 123 is a timesheetId
> >>
> >> Regards,
> >>
> >> Charles
> >>
> >> On Mon, Jul 11, 2016 at 10:48 PM, Steve973 <steve...@gmail.com> wrote:
> >>
> >> > I have my rest dsl route like this:
> >> >
> >> >
> restConfiguration().component("undertow").host("localhost").port("8181");
> >> > rest("/timesheet")
> >> >         .get("/{timesheetId}").produces(MediaType.TEXT_PLAIN)
> >> >         .to("bean:timesheetService?method=getTimesheetById")
> >> >         .put("/{timesheetId}").produces(MediaType.TEXT_PLAIN)
> >> >         .to("bean:timesheetService?method=updateTimesheet");
> >> >
> >> > It's odd because the "put" works just fine, but when I try using the
> >> "get",
> >> > it responds with a 404 error and "no matching path found".  What am I
> >> doing
> >> > wrong?
> >> >
> >>
> >>
> >>
> >> --
> >> Charles Moulliard
> >> Apache Committer & PMC / Architect @RedHat
> >> Twitter : @cmoulliard | Blog :  http://cmoulliard.github.io
> >>
>
>
>
> --
> Claus Ibsen
> -----------------
> http://davsclaus.com @davsclaus
> Camel in Action 2: https://www.manning.com/ibsen2
>

Reply via email to