On Fri, Sep 11, 2009 at 11:37 AM, HariKrishnan <[email protected]> wrote:
>
> Hey,
>
> Looks like this exception is happening because, wiretap is using the same
> Exchange object that is being return back from the actual endpoint.
>
> from(a).to(b).wiretap(cxf:bean).
>
> Let me clarify as to why we are using wiretap after endpoint b. We want the
> return of endpoint b to go to cxf bean. Also return back through the route
> without any changes because of wiretap processing.
>
> Ideally since wiretap is a new thread, it should use a copy of the echange,
> so that any changes it makes to the echange should not affect the return
> value.
> Is there any way we can send a copy of the exchange to wiretap, than sending
> the same exchange.

It does use a copy of the Exchange its just the payload that cannot be
cloned/copied in a generic fashion in Java land.

So the key is to copy the payload without affecting the original which
is hardly possible with streams.



>
> Regards,
> HariKrishnan
>
>
>
> Claus Ibsen-2 wrote:
>>
>> On Thu, Sep 10, 2009 at 11:32 PM, HariKrishnan <[email protected]>
>> wrote:
>>>
>>> Hi,
>>>
>>> Irrespective of whether there is an endpoint after a wiretap, the CXF
>>> bean
>>> is seems to have the same problem. If my understanding correct, the
>>> exchange
>>> body is always a stream. The exception that we are talking about
>>> (Premature
>>> End of File) usually happens with streams if they are not closed of
>>> Flushed.
>>> I have tried using setStreamChaching(true). But that does not work
>>> either.
>>>
>>
>> Can you post the full route and point where you configured the stream
>> caching.
>> And what version of Camel are you using?
>>
>> Adding a .convertBodyTo(String.class) usually remedies this problem
>> with streams. But yet again the stream cache should help as well.
>>
>>
>>> Thanks,
>>> HariKrishnan
>>>
>>>
>>>
>>> Mick Knutson-3 wrote:
>>>>
>>>> Try:
>>>>
>>>> from(a).wiretap(cxf:bean)*.to(b)*
>>>>
>>>> fwik, the wiretap is a middle point before sending to another endpoint.
>>>>
>>>> ---
>>>> Thank You…
>>>>
>>>> Mick Knutson, President
>>>>
>>>> BASE Logic, Inc.
>>>> Enterprise Architecture, Design, Mentoring & Agile Consulting
>>>> p. (866) BLiNC-411: (254-6241-1)
>>>> f. (415) 685-4233
>>>>
>>>> Website: http://baselogic.com
>>>> Linked IN: http://linkedin.com/in/mickknutson
>>>> Vacation Rental: http://tahoe.baselogic.com
>>>> ---
>>>>
>>>>
>>>>
>>>> On Thu, Sep 10, 2009 at 1:04 PM, HariKrishnan
>>>> <[email protected]>wrote:
>>>>
>>>>>
>>>>> Hey,
>>>>>
>>>>> We are using CXF bean to act as a RESTful endpoint.
>>>>> It seems to work fine when we configure the route as shown below. We
>>>>> post
>>>>> an
>>>>> xml to the url and that gets unmarshalled and sent to the CXF bean.
>>>>>
>>>>> from(url).to(cxf:bean)
>>>>>
>>>>> But when we use a wiretap component, there is a "Premature end of file
>>>>> exception".
>>>>>
>>>>> from(a).to(b).wiretap(cxf:bean)
>>>>>
>>>>> We tried setting the setStreamingCache to true, but that was of no
>>>>> avail.
>>>>>
>>>>> Please let us know if we are missing something here.
>>>>>
>>>>> Thanks,
>>>>> HariKrishnan
>>>>>
>>>>>
>>>>> --
>>>>> View this message in context:
>>>>> http://www.nabble.com/Premature-End-of-File-Exception-in-Camel-wiretap-tp25387224p25387224.html
>>>>> Sent from the Camel - Users mailing list archive at Nabble.com.
>>>>>
>>>>>
>>>>
>>>>
>>>
>>> --
>>> View this message in context:
>>> http://www.nabble.com/Premature-End-of-File-Exception-in-Camel-wiretap-tp25387224p25391416.html
>>> Sent from the Camel - Users mailing list archive at Nabble.com.
>>>
>>>
>>
>>
>>
>> --
>> Claus Ibsen
>> Apache Camel Committer
>>
>> Open Source Integration: http://fusesource.com
>> Blog: http://davsclaus.blogspot.com/
>> Twitter: http://twitter.com/davsclaus
>>
>>
>
> --
> View this message in context: 
> http://www.nabble.com/Premature-End-of-File-Exception-in-Camel-wiretap-tp25387224p25397979.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>
>



-- 
Claus Ibsen
Apache Camel Committer

Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus

Reply via email to