camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sergey Beryozkin <>
Subject Re: cxfrs
Date Tue, 03 Jun 2014 19:50:01 GMT
On 03/06/14 18:56, techbird wrote:
> Once more thank you Sergey, as discussed jira ticket raised.
> I guess my hesitation has been caused by coding some simple cxfrs
> routes; and noticing the behaviour of the producer. I couldn't help but
> think, if there are lots of developers using cxfrs then this issue would
> have been resolved a few years ago. So I thought, are developers
> actually using cxfrs? if not, what component are they using or do
> developers prefer to use cxf jax-rs directly from a bean or processor.

AFAIK CXFRS definitely has not been the most used Camel HTTP aware 
component. However it has been improved a lot recently. We have it 
supported in our own distro. I also know that some developers do some 
cool things with it but I'm not going to spend time promoting CXFRS here.

The other point: CXFRS, due to its dependency on JAX-RS, does many 
things the non-Camel way. It is a typical compromise: you either do 
various things at a Camel route level, effectively do a route-based 
'dev' or you have a given component like CXFRS (or CXF) dealing with 
things like serialization, exception handling, etc...

The process of getting CXFRS more Camel friendly is under way, meaning 
that we have some basic improvements in place now for it to respect 
higher-level camel configuration properties, work with Camel-level 
readers/writers, etc.

HTH, Sergey

> For my my use-case, I also have a need for a REST consumer, and for
> simplicity want use the same component for both producer and consumer.
> Therefore, I wondered what was the best way to write JAX-RS services in
> camel!
> On 03/06/14 09:48, Sergey Beryozkin wrote:
>> On 03/06/14 07:45, techbird wrote:
>>> Appreciated Sergey.
>>> You confirmed what I thought, the throwExceptionOnFailure option is not
>>> being processed by the cxfrs component.  I'll raise a jira for this, and
>>> also that the default should be false.
>>> Could someone chime in, and let me know if using cxfrs is the wrong
>>> strategic direction for either invoking or consuming REST services
>>> (using cxf) with Camel.
>> Ultimately it is about making basic HTTP invocations from the route.
>> So please don't worry about making a 'strategic' mistake by either
>> using or not using cxfrs. As I said, try one of pure HTTP components.
>> If you prefer JAX-RS but also for example Jersey rather than CXF then
>> feel free to do a custom Camel Jersey module. There are many ways to
>> achieve the goal of doing HTTP requests from the route
>> Sergey
>>> Kind regards and thank you Bird.
>>> On 02/06/14 21:11, Sergey Beryozkin wrote:
>>>> Hi
>>>> Can you please open a JIRA to get throwExceptionOnFailure=false
>>>> affecting the client ?
>>>> I can do it too, we can get it supported in CXFRS
>>>> Typically, a JAX-RS client dealing with JAX-RS Response should not get
>>>> the exceptions propagated but I guess it is defaulted to right now in
>>>> the CXFRS client
>>>> Cheers, Sergey
>>>> On 02/06/14 21:05, techbird wrote:
>>>>> Thanks Sergey - was looking to use jaxrs/cxf.  Therefore thought
>>>>> cxfrs.
>>>>> Any ideas about the throwExceptionOnFailure option for cxfrs, has
>>>>> anyone
>>>>> being able to get it to work?
>>>>> On 02/06/14 20:55, Sergey Beryozkin wrote:
>>>>>> Hi
>>>>>> camel jetty, http and restlet and possibly other components can be
>>>>>> used too
>>>>>> Sergey
>>>>>> On 02/06/14 20:00, techbird wrote:
>>>>>>> Hi, two questions if I may.
>>>>>>> (1) If I want to invoke REST services, is the cxfrs the preferred
>>>>>>> component to use?
>>>>>>> (2) Using cxfrs I cannot get throwExceptionOnFailure option to
>>>>>>> work.  I
>>>>>>> would like to be able to process errors (>400) in the route,
>>>>>>> than
>>>>>>> complicating the code with exceptions.  No matter what I try,
>>>>>>> errors are
>>>>>>> always raise an exception.  Is there any example code using the
>>>>>>> option
>>>>>>> throwExceptionOnFailure=false?
>>>>>>> Best regards, Bird.

View raw message