throttle executorServiceRef not recognizing threadPool but only threadPoolProfile

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

throttle executorServiceRef not recognizing threadPool but only threadPoolProfile

Robson Vargas Farias
Hi,

Can you help me where is my miss?

I've a camel context configured with a route containing a throttle which is
pointing (ref) to a threadPool:

<camel:camelContext id="camel-server" useMDCLogging="true"
allowUseOriginalMessage="false">


<!-- thread pools -->

<camel:threadPool id="my_thread_pool"
poolSize="1"
maxPoolSize="4"
maxQueueSize="100"
threadName="my_thread_pool" keepAliveTime="0"
rejectedPolicy="DiscardOldest" timeUnit="SECONDS" />

..


<camel:route id="my_route">
<camel:from ref="mq_endpoint" />
<camel:throttle timePeriodMillis="1000" executorServiceRef="my_thread_pool">
..


but, when I start my application I got below error:

Caused By: java.lang.IllegalArgumentException: ExecutorServiceRef
my_thread_pool not found in registry or as a thread pool profile.



If I change the throttle from a threadPool to a threadPoolProfile it works.
So, why it is not working with a threadPool?

Thanks.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: throttle executorServiceRef not recognizing threadPool but only threadPoolProfile

Claus Ibsen-2
What version of Camel do you use, and have you tried with a newer version

On Thu, Apr 20, 2017 at 3:29 PM, Robson Vargas Farias
<[hidden email]> wrote:

> Hi,
>
> Can you help me where is my miss?
>
> I've a camel context configured with a route containing a throttle which is
> pointing (ref) to a threadPool:
>
> <camel:camelContext id="camel-server" useMDCLogging="true"
> allowUseOriginalMessage="false">
>
>
> <!-- thread pools -->
>
> <camel:threadPool id="my_thread_pool"
> poolSize="1"
> maxPoolSize="4"
> maxQueueSize="100"
> threadName="my_thread_pool" keepAliveTime="0"
> rejectedPolicy="DiscardOldest" timeUnit="SECONDS" />
>
> ..
>
>
> <camel:route id="my_route">
> <camel:from ref="mq_endpoint" />
> <camel:throttle timePeriodMillis="1000" executorServiceRef="my_thread_pool">
> ..
>
>
> but, when I start my application I got below error:
>
> Caused By: java.lang.IllegalArgumentException: ExecutorServiceRef
> my_thread_pool not found in registry or as a thread pool profile.
>
>
>
> If I change the throttle from a threadPool to a threadPoolProfile it works.
> So, why it is not working with a threadPool?
>
> Thanks.



--
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: throttle executorServiceRef not recognizing threadPool but only threadPoolProfile

Robson Vargas Farias
Hi Claus, currently using 2.13.2 - and no, did not try other version.

2017-04-20 10:33 GMT-03:00 Claus Ibsen <[hidden email]>:

> What version of Camel do you use, and have you tried with a newer version
>
> On Thu, Apr 20, 2017 at 3:29 PM, Robson Vargas Farias
> <[hidden email]> wrote:
> > Hi,
> >
> > Can you help me where is my miss?
> >
> > I've a camel context configured with a route containing a throttle which
> is
> > pointing (ref) to a threadPool:
> >
> > <camel:camelContext id="camel-server" useMDCLogging="true"
> > allowUseOriginalMessage="false">
> >
> >
> > <!-- thread pools -->
> >
> > <camel:threadPool id="my_thread_pool"
> > poolSize="1"
> > maxPoolSize="4"
> > maxQueueSize="100"
> > threadName="my_thread_pool" keepAliveTime="0"
> > rejectedPolicy="DiscardOldest" timeUnit="SECONDS" />
> >
> > ..
> >
> >
> > <camel:route id="my_route">
> > <camel:from ref="mq_endpoint" />
> > <camel:throttle timePeriodMillis="1000" executorServiceRef="my_thread_
> pool">
> > ..
> >
> >
> > but, when I start my application I got below error:
> >
> > Caused By: java.lang.IllegalArgumentException: ExecutorServiceRef
> > my_thread_pool not found in registry or as a thread pool profile.
> >
> >
> >
> > If I change the throttle from a threadPool to a threadPoolProfile it
> works.
> > So, why it is not working with a threadPool?
> >
> > Thanks.
>
>
>
> --
> Claus Ibsen
> -----------------
> http://davsclaus.com @davsclaus
> Camel in Action 2: https://www.manning.com/ibsen2
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: throttle executorServiceRef not recognizing threadPool but only threadPoolProfile

Claus Ibsen-2
That is very old, its likely/possible fixed on newer version. So I
suggest to try upgrading or build a new sample project using latest
release and see if it works there.

Knowing something is still not working in latest release brings
attention to us. Otherwise we dont have the time to look into this
ourselves first when users are using very old versions of Camel.

On Thu, Apr 20, 2017 at 3:37 PM, Robson Vargas Farias
<[hidden email]> wrote:

> Hi Claus, currently using 2.13.2 - and no, did not try other version.
>
> 2017-04-20 10:33 GMT-03:00 Claus Ibsen <[hidden email]>:
>
>> What version of Camel do you use, and have you tried with a newer version
>>
>> On Thu, Apr 20, 2017 at 3:29 PM, Robson Vargas Farias
>> <[hidden email]> wrote:
>> > Hi,
>> >
>> > Can you help me where is my miss?
>> >
>> > I've a camel context configured with a route containing a throttle which
>> is
>> > pointing (ref) to a threadPool:
>> >
>> > <camel:camelContext id="camel-server" useMDCLogging="true"
>> > allowUseOriginalMessage="false">
>> >
>> >
>> > <!-- thread pools -->
>> >
>> > <camel:threadPool id="my_thread_pool"
>> > poolSize="1"
>> > maxPoolSize="4"
>> > maxQueueSize="100"
>> > threadName="my_thread_pool" keepAliveTime="0"
>> > rejectedPolicy="DiscardOldest" timeUnit="SECONDS" />
>> >
>> > ..
>> >
>> >
>> > <camel:route id="my_route">
>> > <camel:from ref="mq_endpoint" />
>> > <camel:throttle timePeriodMillis="1000" executorServiceRef="my_thread_
>> pool">
>> > ..
>> >
>> >
>> > but, when I start my application I got below error:
>> >
>> > Caused By: java.lang.IllegalArgumentException: ExecutorServiceRef
>> > my_thread_pool not found in registry or as a thread pool profile.
>> >
>> >
>> >
>> > If I change the throttle from a threadPool to a threadPoolProfile it
>> works.
>> > So, why it is not working with a threadPool?
>> >
>> > Thanks.
>>
>>
>>
>> --
>> Claus Ibsen
>> -----------------
>> http://davsclaus.com @davsclaus
>> Camel in Action 2: https://www.manning.com/ibsen2
>>



--
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: throttle executorServiceRef not recognizing threadPool but only threadPoolProfile

Robson Vargas Farias
I've updated to the latest camel-x version which is 2.18.3 and the error
still persists.

Should the threadPool be declared in other place than into the camelContext
?

"..because of ExecutorServiceRef my_thread_pool not found in registry or as
a thread pool profile."

2017-04-20 10:44 GMT-03:00 Claus Ibsen <[hidden email]>:

> That is very old, its likely/possible fixed on newer version. So I
> suggest to try upgrading or build a new sample project using latest
> release and see if it works there.
>
> Knowing something is still not working in latest release brings
> attention to us. Otherwise we dont have the time to look into this
> ourselves first when users are using very old versions of Camel.
>
> On Thu, Apr 20, 2017 at 3:37 PM, Robson Vargas Farias
> <[hidden email]> wrote:
> > Hi Claus, currently using 2.13.2 - and no, did not try other version.
> >
> > 2017-04-20 10:33 GMT-03:00 Claus Ibsen <[hidden email]>:
> >
> >> What version of Camel do you use, and have you tried with a newer
> version
> >>
> >> On Thu, Apr 20, 2017 at 3:29 PM, Robson Vargas Farias
> >> <[hidden email]> wrote:
> >> > Hi,
> >> >
> >> > Can you help me where is my miss?
> >> >
> >> > I've a camel context configured with a route containing a throttle
> which
> >> is
> >> > pointing (ref) to a threadPool:
> >> >
> >> > <camel:camelContext id="camel-server" useMDCLogging="true"
> >> > allowUseOriginalMessage="false">
> >> >
> >> >
> >> > <!-- thread pools -->
> >> >
> >> > <camel:threadPool id="my_thread_pool"
> >> > poolSize="1"
> >> > maxPoolSize="4"
> >> > maxQueueSize="100"
> >> > threadName="my_thread_pool" keepAliveTime="0"
> >> > rejectedPolicy="DiscardOldest" timeUnit="SECONDS" />
> >> >
> >> > ..
> >> >
> >> >
> >> > <camel:route id="my_route">
> >> > <camel:from ref="mq_endpoint" />
> >> > <camel:throttle timePeriodMillis="1000" executorServiceRef="my_thread_
> >> pool">
> >> > ..
> >> >
> >> >
> >> > but, when I start my application I got below error:
> >> >
> >> > Caused By: java.lang.IllegalArgumentException: ExecutorServiceRef
> >> > my_thread_pool not found in registry or as a thread pool profile.
> >> >
> >> >
> >> >
> >> > If I change the throttle from a threadPool to a threadPoolProfile it
> >> works.
> >> > So, why it is not working with a threadPool?
> >> >
> >> > Thanks.
> >>
> >>
> >>
> >> --
> >> Claus Ibsen
> >> -----------------
> >> http://davsclaus.com @davsclaus
> >> Camel in Action 2: https://www.manning.com/ibsen2
> >>
>
>
>
> --
> Claus Ibsen
> -----------------
> http://davsclaus.com @davsclaus
> Camel in Action 2: https://www.manning.com/ibsen2
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: throttle executorServiceRef not recognizing threadPool but only threadPoolProfile

Claus Ibsen-2
It ought to work as its using the same code the other EIPs would do,
can you provide a very small sample project that reproduces this.




On Thu, Apr 20, 2017 at 9:09 PM, Robson Vargas Farias
<[hidden email]> wrote:

> I've updated to the latest camel-x version which is 2.18.3 and the error
> still persists.
>
> Should the threadPool be declared in other place than into the camelContext
> ?
>
> "..because of ExecutorServiceRef my_thread_pool not found in registry or as
> a thread pool profile."
>
> 2017-04-20 10:44 GMT-03:00 Claus Ibsen <[hidden email]>:
>
>> That is very old, its likely/possible fixed on newer version. So I
>> suggest to try upgrading or build a new sample project using latest
>> release and see if it works there.
>>
>> Knowing something is still not working in latest release brings
>> attention to us. Otherwise we dont have the time to look into this
>> ourselves first when users are using very old versions of Camel.
>>
>> On Thu, Apr 20, 2017 at 3:37 PM, Robson Vargas Farias
>> <[hidden email]> wrote:
>> > Hi Claus, currently using 2.13.2 - and no, did not try other version.
>> >
>> > 2017-04-20 10:33 GMT-03:00 Claus Ibsen <[hidden email]>:
>> >
>> >> What version of Camel do you use, and have you tried with a newer
>> version
>> >>
>> >> On Thu, Apr 20, 2017 at 3:29 PM, Robson Vargas Farias
>> >> <[hidden email]> wrote:
>> >> > Hi,
>> >> >
>> >> > Can you help me where is my miss?
>> >> >
>> >> > I've a camel context configured with a route containing a throttle
>> which
>> >> is
>> >> > pointing (ref) to a threadPool:
>> >> >
>> >> > <camel:camelContext id="camel-server" useMDCLogging="true"
>> >> > allowUseOriginalMessage="false">
>> >> >
>> >> >
>> >> > <!-- thread pools -->
>> >> >
>> >> > <camel:threadPool id="my_thread_pool"
>> >> > poolSize="1"
>> >> > maxPoolSize="4"
>> >> > maxQueueSize="100"
>> >> > threadName="my_thread_pool" keepAliveTime="0"
>> >> > rejectedPolicy="DiscardOldest" timeUnit="SECONDS" />
>> >> >
>> >> > ..
>> >> >
>> >> >
>> >> > <camel:route id="my_route">
>> >> > <camel:from ref="mq_endpoint" />
>> >> > <camel:throttle timePeriodMillis="1000" executorServiceRef="my_thread_
>> >> pool">
>> >> > ..
>> >> >
>> >> >
>> >> > but, when I start my application I got below error:
>> >> >
>> >> > Caused By: java.lang.IllegalArgumentException: ExecutorServiceRef
>> >> > my_thread_pool not found in registry or as a thread pool profile.
>> >> >
>> >> >
>> >> >
>> >> > If I change the throttle from a threadPool to a threadPoolProfile it
>> >> works.
>> >> > So, why it is not working with a threadPool?
>> >> >
>> >> > Thanks.
>> >>
>> >>
>> >>
>> >> --
>> >> Claus Ibsen
>> >> -----------------
>> >> http://davsclaus.com @davsclaus
>> >> Camel in Action 2: https://www.manning.com/ibsen2
>> >>
>>
>>
>>
>> --
>> Claus Ibsen
>> -----------------
>> http://davsclaus.com @davsclaus
>> Camel in Action 2: https://www.manning.com/ibsen2
>>



--
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: throttle executorServiceRef not recognizing threadPool but only threadPoolProfile

Claus Ibsen-2
I created an unit test that cannot reproduce the problem you have
https://github.com/apache/camel/commit/9b3e7ebe58ae3e569d3869c476642937c09d0a0c

On Fri, Apr 21, 2017 at 10:36 AM, Claus Ibsen <[hidden email]> wrote:

> It ought to work as its using the same code the other EIPs would do,
> can you provide a very small sample project that reproduces this.
>
>
>
>
> On Thu, Apr 20, 2017 at 9:09 PM, Robson Vargas Farias
> <[hidden email]> wrote:
>> I've updated to the latest camel-x version which is 2.18.3 and the error
>> still persists.
>>
>> Should the threadPool be declared in other place than into the camelContext
>> ?
>>
>> "..because of ExecutorServiceRef my_thread_pool not found in registry or as
>> a thread pool profile."
>>
>> 2017-04-20 10:44 GMT-03:00 Claus Ibsen <[hidden email]>:
>>
>>> That is very old, its likely/possible fixed on newer version. So I
>>> suggest to try upgrading or build a new sample project using latest
>>> release and see if it works there.
>>>
>>> Knowing something is still not working in latest release brings
>>> attention to us. Otherwise we dont have the time to look into this
>>> ourselves first when users are using very old versions of Camel.
>>>
>>> On Thu, Apr 20, 2017 at 3:37 PM, Robson Vargas Farias
>>> <[hidden email]> wrote:
>>> > Hi Claus, currently using 2.13.2 - and no, did not try other version.
>>> >
>>> > 2017-04-20 10:33 GMT-03:00 Claus Ibsen <[hidden email]>:
>>> >
>>> >> What version of Camel do you use, and have you tried with a newer
>>> version
>>> >>
>>> >> On Thu, Apr 20, 2017 at 3:29 PM, Robson Vargas Farias
>>> >> <[hidden email]> wrote:
>>> >> > Hi,
>>> >> >
>>> >> > Can you help me where is my miss?
>>> >> >
>>> >> > I've a camel context configured with a route containing a throttle
>>> which
>>> >> is
>>> >> > pointing (ref) to a threadPool:
>>> >> >
>>> >> > <camel:camelContext id="camel-server" useMDCLogging="true"
>>> >> > allowUseOriginalMessage="false">
>>> >> >
>>> >> >
>>> >> > <!-- thread pools -->
>>> >> >
>>> >> > <camel:threadPool id="my_thread_pool"
>>> >> > poolSize="1"
>>> >> > maxPoolSize="4"
>>> >> > maxQueueSize="100"
>>> >> > threadName="my_thread_pool" keepAliveTime="0"
>>> >> > rejectedPolicy="DiscardOldest" timeUnit="SECONDS" />
>>> >> >
>>> >> > ..
>>> >> >
>>> >> >
>>> >> > <camel:route id="my_route">
>>> >> > <camel:from ref="mq_endpoint" />
>>> >> > <camel:throttle timePeriodMillis="1000" executorServiceRef="my_thread_
>>> >> pool">
>>> >> > ..
>>> >> >
>>> >> >
>>> >> > but, when I start my application I got below error:
>>> >> >
>>> >> > Caused By: java.lang.IllegalArgumentException: ExecutorServiceRef
>>> >> > my_thread_pool not found in registry or as a thread pool profile.
>>> >> >
>>> >> >
>>> >> >
>>> >> > If I change the throttle from a threadPool to a threadPoolProfile it
>>> >> works.
>>> >> > So, why it is not working with a threadPool?
>>> >> >
>>> >> > Thanks.
>>> >>
>>> >>
>>> >>
>>> >> --
>>> >> Claus Ibsen
>>> >> -----------------
>>> >> http://davsclaus.com @davsclaus
>>> >> Camel in Action 2: https://www.manning.com/ibsen2
>>> >>
>>>
>>>
>>>
>>> --
>>> Claus Ibsen
>>> -----------------
>>> http://davsclaus.com @davsclaus
>>> Camel in Action 2: https://www.manning.com/ibsen2
>>>
>
>
>
> --
> Claus Ibsen
> -----------------
> http://davsclaus.com @davsclaus
> Camel in Action 2: https://www.manning.com/ibsen2



--
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: throttle executorServiceRef not recognizing threadPool but only threadPoolProfile

Robson Vargas Farias
Hi Claus, thanks for the support. So, actually as I mentioned, my query is:
"Why the throttle works only with ThreadPoolProfile and not with a
ThreadPool", in your sample, you used a threadpoolprofile and it´s fine, it
works for me too. But, try to run that test with a threadpool:

<?xml version="1.0" encoding="UTF-8"?>
<!-- Licensed to the Apache Software Foundation (ASF) under one or more
contributor
license agreements. See the NOTICE file distributed with this work for
additional
information regarding copyright ownership. The ASF licenses this file to
You under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of
the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
by applicable law or agreed to in writing, software distributed under the
License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
CONDITIONS
OF ANY KIND, either express or implied. See the License for the specific
language governing permissions and limitations under the License. -->
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
       http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
       http://camel.apache.org/schema/spring
http://camel.apache.org/schema/spring/camel-spring.xsd
    ">

<camelContext xmlns="http://camel.apache.org/schema/spring">

<threadPool id="my_thread_pool" poolSize="1" maxPoolSize="4"
maxQueueSize="100" threadName="my_thread_pool" keepAliveTime="0"
rejectedPolicy="DiscardOldest" timeUnit="SECONDS" />

<route>
<from uri="direct:start" />
<throttle executorServiceRef="my_thread_pool">
<constant>2</constant>
<to uri="mock:result" />
</throttle>
</route>

</camelContext>

</beans>


2017-04-21 5:53 GMT-03:00 Claus Ibsen <[hidden email]>:

> I created an unit test that cannot reproduce the problem you have
> https://github.com/apache/camel/commit/9b3e7ebe58ae3e569d3869c4766429
> 37c09d0a0c
>
> On Fri, Apr 21, 2017 at 10:36 AM, Claus Ibsen <[hidden email]>
> wrote:
> > It ought to work as its using the same code the other EIPs would do,
> > can you provide a very small sample project that reproduces this.
> >
> >
> >
> >
> > On Thu, Apr 20, 2017 at 9:09 PM, Robson Vargas Farias
> > <[hidden email]> wrote:
> >> I've updated to the latest camel-x version which is 2.18.3 and the error
> >> still persists.
> >>
> >> Should the threadPool be declared in other place than into the
> camelContext
> >> ?
> >>
> >> "..because of ExecutorServiceRef my_thread_pool not found in registry
> or as
> >> a thread pool profile."
> >>
> >> 2017-04-20 10:44 GMT-03:00 Claus Ibsen <[hidden email]>:
> >>
> >>> That is very old, its likely/possible fixed on newer version. So I
> >>> suggest to try upgrading or build a new sample project using latest
> >>> release and see if it works there.
> >>>
> >>> Knowing something is still not working in latest release brings
> >>> attention to us. Otherwise we dont have the time to look into this
> >>> ourselves first when users are using very old versions of Camel.
> >>>
> >>> On Thu, Apr 20, 2017 at 3:37 PM, Robson Vargas Farias
> >>> <[hidden email]> wrote:
> >>> > Hi Claus, currently using 2.13.2 - and no, did not try other version.
> >>> >
> >>> > 2017-04-20 10:33 GMT-03:00 Claus Ibsen <[hidden email]>:
> >>> >
> >>> >> What version of Camel do you use, and have you tried with a newer
> >>> version
> >>> >>
> >>> >> On Thu, Apr 20, 2017 at 3:29 PM, Robson Vargas Farias
> >>> >> <[hidden email]> wrote:
> >>> >> > Hi,
> >>> >> >
> >>> >> > Can you help me where is my miss?
> >>> >> >
> >>> >> > I've a camel context configured with a route containing a throttle
> >>> which
> >>> >> is
> >>> >> > pointing (ref) to a threadPool:
> >>> >> >
> >>> >> > <camel:camelContext id="camel-server" useMDCLogging="true"
> >>> >> > allowUseOriginalMessage="false">
> >>> >> >
> >>> >> >
> >>> >> > <!-- thread pools -->
> >>> >> >
> >>> >> > <camel:threadPool id="my_thread_pool"
> >>> >> > poolSize="1"
> >>> >> > maxPoolSize="4"
> >>> >> > maxQueueSize="100"
> >>> >> > threadName="my_thread_pool" keepAliveTime="0"
> >>> >> > rejectedPolicy="DiscardOldest" timeUnit="SECONDS" />
> >>> >> >
> >>> >> > ..
> >>> >> >
> >>> >> >
> >>> >> > <camel:route id="my_route">
> >>> >> > <camel:from ref="mq_endpoint" />
> >>> >> > <camel:throttle timePeriodMillis="1000"
> executorServiceRef="my_thread_
> >>> >> pool">
> >>> >> > ..
> >>> >> >
> >>> >> >
> >>> >> > but, when I start my application I got below error:
> >>> >> >
> >>> >> > Caused By: java.lang.IllegalArgumentException: ExecutorServiceRef
> >>> >> > my_thread_pool not found in registry or as a thread pool profile.
> >>> >> >
> >>> >> >
> >>> >> >
> >>> >> > If I change the throttle from a threadPool to a threadPoolProfile
> it
> >>> >> works.
> >>> >> > So, why it is not working with a threadPool?
> >>> >> >
> >>> >> > Thanks.
> >>> >>
> >>> >>
> >>> >>
> >>> >> --
> >>> >> Claus Ibsen
> >>> >> -----------------
> >>> >> http://davsclaus.com @davsclaus
> >>> >> Camel in Action 2: https://www.manning.com/ibsen2
> >>> >>
> >>>
> >>>
> >>>
> >>> --
> >>> Claus Ibsen
> >>> -----------------
> >>> http://davsclaus.com @davsclaus
> >>> Camel in Action 2: https://www.manning.com/ibsen2
> >>>
> >
> >
> >
> > --
> > Claus Ibsen
> > -----------------
> > http://davsclaus.com @davsclaus
> > Camel in Action 2: https://www.manning.com/ibsen2
>
>
>
> --
> Claus Ibsen
> -----------------
> http://davsclaus.com @davsclaus
> Camel in Action 2: https://www.manning.com/ibsen2
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: throttle executorServiceRef not recognizing threadPool but only threadPoolProfile

Claus Ibsen-2
The thread pool must be a scheduled thread pool and not a regular pool

On Fri, Apr 21, 2017 at 3:50 PM, Robson Vargas Farias
<[hidden email]> wrote:

> Hi Claus, thanks for the support. So, actually as I mentioned, my query is:
> "Why the throttle works only with ThreadPoolProfile and not with a
> ThreadPool", in your sample, you used a threadpoolprofile and it´s fine, it
> works for me too. But, try to run that test with a threadpool:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <!-- Licensed to the Apache Software Foundation (ASF) under one or more
> contributor
> license agreements. See the NOTICE file distributed with this work for
> additional
> information regarding copyright ownership. The ASF licenses this file to
> You under the Apache License, Version 2.0 (the "License"); you may not use
> this file except in compliance with the License. You may obtain a copy of
> the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
> by applicable law or agreed to in writing, software distributed under the
> License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
> CONDITIONS
> OF ANY KIND, either express or implied. See the License for the specific
> language governing permissions and limitations under the License. -->
> <beans xmlns="http://www.springframework.org/schema/beans"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="
>        http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans.xsd
>        http://camel.apache.org/schema/spring
> http://camel.apache.org/schema/spring/camel-spring.xsd
>     ">
>
> <camelContext xmlns="http://camel.apache.org/schema/spring">
>
> <threadPool id="my_thread_pool" poolSize="1" maxPoolSize="4"
> maxQueueSize="100" threadName="my_thread_pool" keepAliveTime="0"
> rejectedPolicy="DiscardOldest" timeUnit="SECONDS" />
>
> <route>
> <from uri="direct:start" />
> <throttle executorServiceRef="my_thread_pool">
> <constant>2</constant>
> <to uri="mock:result" />
> </throttle>
> </route>
>
> </camelContext>
>
> </beans>
>
>
> 2017-04-21 5:53 GMT-03:00 Claus Ibsen <[hidden email]>:
>
>> I created an unit test that cannot reproduce the problem you have
>> https://github.com/apache/camel/commit/9b3e7ebe58ae3e569d3869c4766429
>> 37c09d0a0c
>>
>> On Fri, Apr 21, 2017 at 10:36 AM, Claus Ibsen <[hidden email]>
>> wrote:
>> > It ought to work as its using the same code the other EIPs would do,
>> > can you provide a very small sample project that reproduces this.
>> >
>> >
>> >
>> >
>> > On Thu, Apr 20, 2017 at 9:09 PM, Robson Vargas Farias
>> > <[hidden email]> wrote:
>> >> I've updated to the latest camel-x version which is 2.18.3 and the error
>> >> still persists.
>> >>
>> >> Should the threadPool be declared in other place than into the
>> camelContext
>> >> ?
>> >>
>> >> "..because of ExecutorServiceRef my_thread_pool not found in registry
>> or as
>> >> a thread pool profile."
>> >>
>> >> 2017-04-20 10:44 GMT-03:00 Claus Ibsen <[hidden email]>:
>> >>
>> >>> That is very old, its likely/possible fixed on newer version. So I
>> >>> suggest to try upgrading or build a new sample project using latest
>> >>> release and see if it works there.
>> >>>
>> >>> Knowing something is still not working in latest release brings
>> >>> attention to us. Otherwise we dont have the time to look into this
>> >>> ourselves first when users are using very old versions of Camel.
>> >>>
>> >>> On Thu, Apr 20, 2017 at 3:37 PM, Robson Vargas Farias
>> >>> <[hidden email]> wrote:
>> >>> > Hi Claus, currently using 2.13.2 - and no, did not try other version.
>> >>> >
>> >>> > 2017-04-20 10:33 GMT-03:00 Claus Ibsen <[hidden email]>:
>> >>> >
>> >>> >> What version of Camel do you use, and have you tried with a newer
>> >>> version
>> >>> >>
>> >>> >> On Thu, Apr 20, 2017 at 3:29 PM, Robson Vargas Farias
>> >>> >> <[hidden email]> wrote:
>> >>> >> > Hi,
>> >>> >> >
>> >>> >> > Can you help me where is my miss?
>> >>> >> >
>> >>> >> > I've a camel context configured with a route containing a throttle
>> >>> which
>> >>> >> is
>> >>> >> > pointing (ref) to a threadPool:
>> >>> >> >
>> >>> >> > <camel:camelContext id="camel-server" useMDCLogging="true"
>> >>> >> > allowUseOriginalMessage="false">
>> >>> >> >
>> >>> >> >
>> >>> >> > <!-- thread pools -->
>> >>> >> >
>> >>> >> > <camel:threadPool id="my_thread_pool"
>> >>> >> > poolSize="1"
>> >>> >> > maxPoolSize="4"
>> >>> >> > maxQueueSize="100"
>> >>> >> > threadName="my_thread_pool" keepAliveTime="0"
>> >>> >> > rejectedPolicy="DiscardOldest" timeUnit="SECONDS" />
>> >>> >> >
>> >>> >> > ..
>> >>> >> >
>> >>> >> >
>> >>> >> > <camel:route id="my_route">
>> >>> >> > <camel:from ref="mq_endpoint" />
>> >>> >> > <camel:throttle timePeriodMillis="1000"
>> executorServiceRef="my_thread_
>> >>> >> pool">
>> >>> >> > ..
>> >>> >> >
>> >>> >> >
>> >>> >> > but, when I start my application I got below error:
>> >>> >> >
>> >>> >> > Caused By: java.lang.IllegalArgumentException: ExecutorServiceRef
>> >>> >> > my_thread_pool not found in registry or as a thread pool profile.
>> >>> >> >
>> >>> >> >
>> >>> >> >
>> >>> >> > If I change the throttle from a threadPool to a threadPoolProfile
>> it
>> >>> >> works.
>> >>> >> > So, why it is not working with a threadPool?
>> >>> >> >
>> >>> >> > Thanks.
>> >>> >>
>> >>> >>
>> >>> >>
>> >>> >> --
>> >>> >> Claus Ibsen
>> >>> >> -----------------
>> >>> >> http://davsclaus.com @davsclaus
>> >>> >> Camel in Action 2: https://www.manning.com/ibsen2
>> >>> >>
>> >>>
>> >>>
>> >>>
>> >>> --
>> >>> Claus Ibsen
>> >>> -----------------
>> >>> http://davsclaus.com @davsclaus
>> >>> Camel in Action 2: https://www.manning.com/ibsen2
>> >>>
>> >
>> >
>> >
>> > --
>> > Claus Ibsen
>> > -----------------
>> > http://davsclaus.com @davsclaus
>> > Camel in Action 2: https://www.manning.com/ibsen2
>>
>>
>>
>> --
>> Claus Ibsen
>> -----------------
>> http://davsclaus.com @davsclaus
>> Camel in Action 2: https://www.manning.com/ibsen2
>>



--
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: throttle executorServiceRef not recognizing threadPool but only threadPoolProfile

Robson Vargas Farias
Right, but I still don't understood the point, sorry I'm kindly newer in
Camel. as per I read on Camel documentation, the regular threadPool kind of
"extend" from a threadPoolProfile"

"Create custom thread pool You can also use the <threadPool/> tag in Spring
XML to create a specific thread pool (eg ExecutorService). Notice that any
options you do not explicit define, will have Camel to use the default
thread pool profile as fallback. For example if you omit setting the
maxQueueSize then Camel will fallback and use the value from the default
thread pool profiles, which by default is 1000." -
http://camel.apache.org/threading-model.html

so, what exactly is the difference when you mean "ThreadPoolProfile" is
scheduled and "ThreadPool" isn´t ?

2017-04-21 10:51 GMT-03:00 Claus Ibsen <[hidden email]>:

> The thread pool must be a scheduled thread pool and not a regular pool
>
> On Fri, Apr 21, 2017 at 3:50 PM, Robson Vargas Farias
> <[hidden email]> wrote:
> > Hi Claus, thanks for the support. So, actually as I mentioned, my query
> is:
> > "Why the throttle works only with ThreadPoolProfile and not with a
> > ThreadPool", in your sample, you used a threadpoolprofile and it´s fine,
> it
> > works for me too. But, try to run that test with a threadpool:
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <!-- Licensed to the Apache Software Foundation (ASF) under one or more
> > contributor
> > license agreements. See the NOTICE file distributed with this work for
> > additional
> > information regarding copyright ownership. The ASF licenses this file to
> > You under the Apache License, Version 2.0 (the "License"); you may not
> use
> > this file except in compliance with the License. You may obtain a copy of
> > the License at http://www.apache.org/licenses/LICENSE-2.0 Unless
> required
> > by applicable law or agreed to in writing, software distributed under the
> > License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
> > CONDITIONS
> > OF ANY KIND, either express or implied. See the License for the specific
> > language governing permissions and limitations under the License. -->
> > <beans xmlns="http://www.springframework.org/schema/beans"
> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> > xsi:schemaLocation="
> >        http://www.springframework.org/schema/beans
> > http://www.springframework.org/schema/beans/spring-beans.xsd
> >        http://camel.apache.org/schema/spring
> > http://camel.apache.org/schema/spring/camel-spring.xsd
> >     ">
> >
> > <camelContext xmlns="http://camel.apache.org/schema/spring">
> >
> > <threadPool id="my_thread_pool" poolSize="1" maxPoolSize="4"
> > maxQueueSize="100" threadName="my_thread_pool" keepAliveTime="0"
> > rejectedPolicy="DiscardOldest" timeUnit="SECONDS" />
> >
> > <route>
> > <from uri="direct:start" />
> > <throttle executorServiceRef="my_thread_pool">
> > <constant>2</constant>
> > <to uri="mock:result" />
> > </throttle>
> > </route>
> >
> > </camelContext>
> >
> > </beans>
> >
> >
> > 2017-04-21 5:53 GMT-03:00 Claus Ibsen <[hidden email]>:
> >
> >> I created an unit test that cannot reproduce the problem you have
> >> https://github.com/apache/camel/commit/9b3e7ebe58ae3e569d3869c4766429
> >> 37c09d0a0c
> >>
> >> On Fri, Apr 21, 2017 at 10:36 AM, Claus Ibsen <[hidden email]>
> >> wrote:
> >> > It ought to work as its using the same code the other EIPs would do,
> >> > can you provide a very small sample project that reproduces this.
> >> >
> >> >
> >> >
> >> >
> >> > On Thu, Apr 20, 2017 at 9:09 PM, Robson Vargas Farias
> >> > <[hidden email]> wrote:
> >> >> I've updated to the latest camel-x version which is 2.18.3 and the
> error
> >> >> still persists.
> >> >>
> >> >> Should the threadPool be declared in other place than into the
> >> camelContext
> >> >> ?
> >> >>
> >> >> "..because of ExecutorServiceRef my_thread_pool not found in registry
> >> or as
> >> >> a thread pool profile."
> >> >>
> >> >> 2017-04-20 10:44 GMT-03:00 Claus Ibsen <[hidden email]>:
> >> >>
> >> >>> That is very old, its likely/possible fixed on newer version. So I
> >> >>> suggest to try upgrading or build a new sample project using latest
> >> >>> release and see if it works there.
> >> >>>
> >> >>> Knowing something is still not working in latest release brings
> >> >>> attention to us. Otherwise we dont have the time to look into this
> >> >>> ourselves first when users are using very old versions of Camel.
> >> >>>
> >> >>> On Thu, Apr 20, 2017 at 3:37 PM, Robson Vargas Farias
> >> >>> <[hidden email]> wrote:
> >> >>> > Hi Claus, currently using 2.13.2 - and no, did not try other
> version.
> >> >>> >
> >> >>> > 2017-04-20 10:33 GMT-03:00 Claus Ibsen <[hidden email]>:
> >> >>> >
> >> >>> >> What version of Camel do you use, and have you tried with a newer
> >> >>> version
> >> >>> >>
> >> >>> >> On Thu, Apr 20, 2017 at 3:29 PM, Robson Vargas Farias
> >> >>> >> <[hidden email]> wrote:
> >> >>> >> > Hi,
> >> >>> >> >
> >> >>> >> > Can you help me where is my miss?
> >> >>> >> >
> >> >>> >> > I've a camel context configured with a route containing a
> throttle
> >> >>> which
> >> >>> >> is
> >> >>> >> > pointing (ref) to a threadPool:
> >> >>> >> >
> >> >>> >> > <camel:camelContext id="camel-server" useMDCLogging="true"
> >> >>> >> > allowUseOriginalMessage="false">
> >> >>> >> >
> >> >>> >> >
> >> >>> >> > <!-- thread pools -->
> >> >>> >> >
> >> >>> >> > <camel:threadPool id="my_thread_pool"
> >> >>> >> > poolSize="1"
> >> >>> >> > maxPoolSize="4"
> >> >>> >> > maxQueueSize="100"
> >> >>> >> > threadName="my_thread_pool" keepAliveTime="0"
> >> >>> >> > rejectedPolicy="DiscardOldest" timeUnit="SECONDS" />
> >> >>> >> >
> >> >>> >> > ..
> >> >>> >> >
> >> >>> >> >
> >> >>> >> > <camel:route id="my_route">
> >> >>> >> > <camel:from ref="mq_endpoint" />
> >> >>> >> > <camel:throttle timePeriodMillis="1000"
> >> executorServiceRef="my_thread_
> >> >>> >> pool">
> >> >>> >> > ..
> >> >>> >> >
> >> >>> >> >
> >> >>> >> > but, when I start my application I got below error:
> >> >>> >> >
> >> >>> >> > Caused By: java.lang.IllegalArgumentException:
> ExecutorServiceRef
> >> >>> >> > my_thread_pool not found in registry or as a thread pool
> profile.
> >> >>> >> >
> >> >>> >> >
> >> >>> >> >
> >> >>> >> > If I change the throttle from a threadPool to a
> threadPoolProfile
> >> it
> >> >>> >> works.
> >> >>> >> > So, why it is not working with a threadPool?
> >> >>> >> >
> >> >>> >> > Thanks.
> >> >>> >>
> >> >>> >>
> >> >>> >>
> >> >>> >> --
> >> >>> >> Claus Ibsen
> >> >>> >> -----------------
> >> >>> >> http://davsclaus.com @davsclaus
> >> >>> >> Camel in Action 2: https://www.manning.com/ibsen2
> >> >>> >>
> >> >>>
> >> >>>
> >> >>>
> >> >>> --
> >> >>> Claus Ibsen
> >> >>> -----------------
> >> >>> http://davsclaus.com @davsclaus
> >> >>> Camel in Action 2: https://www.manning.com/ibsen2
> >> >>>
> >> >
> >> >
> >> >
> >> > --
> >> > Claus Ibsen
> >> > -----------------
> >> > http://davsclaus.com @davsclaus
> >> > Camel in Action 2: https://www.manning.com/ibsen2
> >>
> >>
> >>
> >> --
> >> Claus Ibsen
> >> -----------------
> >> http://davsclaus.com @davsclaus
> >> Camel in Action 2: https://www.manning.com/ibsen2
> >>
>
>
>
> --
> Claus Ibsen
> -----------------
> http://davsclaus.com @davsclaus
> Camel in Action 2: https://www.manning.com/ibsen2
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: throttle executorServiceRef not recognizing threadPool but only threadPoolProfile

Claus Ibsen-2
Set scheduled="true" on the <threadPool>

On Fri, Apr 21, 2017 at 4:03 PM, Robson Vargas Farias
<[hidden email]> wrote:

> Right, but I still don't understood the point, sorry I'm kindly newer in
> Camel. as per I read on Camel documentation, the regular threadPool kind of
> "extend" from a threadPoolProfile"
>
> "Create custom thread pool You can also use the <threadPool/> tag in Spring
> XML to create a specific thread pool (eg ExecutorService). Notice that any
> options you do not explicit define, will have Camel to use the default
> thread pool profile as fallback. For example if you omit setting the
> maxQueueSize then Camel will fallback and use the value from the default
> thread pool profiles, which by default is 1000." -
> http://camel.apache.org/threading-model.html
>
> so, what exactly is the difference when you mean "ThreadPoolProfile" is
> scheduled and "ThreadPool" isn´t ?
>
> 2017-04-21 10:51 GMT-03:00 Claus Ibsen <[hidden email]>:
>
>> The thread pool must be a scheduled thread pool and not a regular pool
>>
>> On Fri, Apr 21, 2017 at 3:50 PM, Robson Vargas Farias
>> <[hidden email]> wrote:
>> > Hi Claus, thanks for the support. So, actually as I mentioned, my query
>> is:
>> > "Why the throttle works only with ThreadPoolProfile and not with a
>> > ThreadPool", in your sample, you used a threadpoolprofile and it´s fine,
>> it
>> > works for me too. But, try to run that test with a threadpool:
>> >
>> > <?xml version="1.0" encoding="UTF-8"?>
>> > <!-- Licensed to the Apache Software Foundation (ASF) under one or more
>> > contributor
>> > license agreements. See the NOTICE file distributed with this work for
>> > additional
>> > information regarding copyright ownership. The ASF licenses this file to
>> > You under the Apache License, Version 2.0 (the "License"); you may not
>> use
>> > this file except in compliance with the License. You may obtain a copy of
>> > the License at http://www.apache.org/licenses/LICENSE-2.0 Unless
>> required
>> > by applicable law or agreed to in writing, software distributed under the
>> > License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
>> > CONDITIONS
>> > OF ANY KIND, either express or implied. See the License for the specific
>> > language governing permissions and limitations under the License. -->
>> > <beans xmlns="http://www.springframework.org/schema/beans"
>> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>> > xsi:schemaLocation="
>> >        http://www.springframework.org/schema/beans
>> > http://www.springframework.org/schema/beans/spring-beans.xsd
>> >        http://camel.apache.org/schema/spring
>> > http://camel.apache.org/schema/spring/camel-spring.xsd
>> >     ">
>> >
>> > <camelContext xmlns="http://camel.apache.org/schema/spring">
>> >
>> > <threadPool id="my_thread_pool" poolSize="1" maxPoolSize="4"
>> > maxQueueSize="100" threadName="my_thread_pool" keepAliveTime="0"
>> > rejectedPolicy="DiscardOldest" timeUnit="SECONDS" />
>> >
>> > <route>
>> > <from uri="direct:start" />
>> > <throttle executorServiceRef="my_thread_pool">
>> > <constant>2</constant>
>> > <to uri="mock:result" />
>> > </throttle>
>> > </route>
>> >
>> > </camelContext>
>> >
>> > </beans>
>> >
>> >
>> > 2017-04-21 5:53 GMT-03:00 Claus Ibsen <[hidden email]>:
>> >
>> >> I created an unit test that cannot reproduce the problem you have
>> >> https://github.com/apache/camel/commit/9b3e7ebe58ae3e569d3869c4766429
>> >> 37c09d0a0c
>> >>
>> >> On Fri, Apr 21, 2017 at 10:36 AM, Claus Ibsen <[hidden email]>
>> >> wrote:
>> >> > It ought to work as its using the same code the other EIPs would do,
>> >> > can you provide a very small sample project that reproduces this.
>> >> >
>> >> >
>> >> >
>> >> >
>> >> > On Thu, Apr 20, 2017 at 9:09 PM, Robson Vargas Farias
>> >> > <[hidden email]> wrote:
>> >> >> I've updated to the latest camel-x version which is 2.18.3 and the
>> error
>> >> >> still persists.
>> >> >>
>> >> >> Should the threadPool be declared in other place than into the
>> >> camelContext
>> >> >> ?
>> >> >>
>> >> >> "..because of ExecutorServiceRef my_thread_pool not found in registry
>> >> or as
>> >> >> a thread pool profile."
>> >> >>
>> >> >> 2017-04-20 10:44 GMT-03:00 Claus Ibsen <[hidden email]>:
>> >> >>
>> >> >>> That is very old, its likely/possible fixed on newer version. So I
>> >> >>> suggest to try upgrading or build a new sample project using latest
>> >> >>> release and see if it works there.
>> >> >>>
>> >> >>> Knowing something is still not working in latest release brings
>> >> >>> attention to us. Otherwise we dont have the time to look into this
>> >> >>> ourselves first when users are using very old versions of Camel.
>> >> >>>
>> >> >>> On Thu, Apr 20, 2017 at 3:37 PM, Robson Vargas Farias
>> >> >>> <[hidden email]> wrote:
>> >> >>> > Hi Claus, currently using 2.13.2 - and no, did not try other
>> version.
>> >> >>> >
>> >> >>> > 2017-04-20 10:33 GMT-03:00 Claus Ibsen <[hidden email]>:
>> >> >>> >
>> >> >>> >> What version of Camel do you use, and have you tried with a newer
>> >> >>> version
>> >> >>> >>
>> >> >>> >> On Thu, Apr 20, 2017 at 3:29 PM, Robson Vargas Farias
>> >> >>> >> <[hidden email]> wrote:
>> >> >>> >> > Hi,
>> >> >>> >> >
>> >> >>> >> > Can you help me where is my miss?
>> >> >>> >> >
>> >> >>> >> > I've a camel context configured with a route containing a
>> throttle
>> >> >>> which
>> >> >>> >> is
>> >> >>> >> > pointing (ref) to a threadPool:
>> >> >>> >> >
>> >> >>> >> > <camel:camelContext id="camel-server" useMDCLogging="true"
>> >> >>> >> > allowUseOriginalMessage="false">
>> >> >>> >> >
>> >> >>> >> >
>> >> >>> >> > <!-- thread pools -->
>> >> >>> >> >
>> >> >>> >> > <camel:threadPool id="my_thread_pool"
>> >> >>> >> > poolSize="1"
>> >> >>> >> > maxPoolSize="4"
>> >> >>> >> > maxQueueSize="100"
>> >> >>> >> > threadName="my_thread_pool" keepAliveTime="0"
>> >> >>> >> > rejectedPolicy="DiscardOldest" timeUnit="SECONDS" />
>> >> >>> >> >
>> >> >>> >> > ..
>> >> >>> >> >
>> >> >>> >> >
>> >> >>> >> > <camel:route id="my_route">
>> >> >>> >> > <camel:from ref="mq_endpoint" />
>> >> >>> >> > <camel:throttle timePeriodMillis="1000"
>> >> executorServiceRef="my_thread_
>> >> >>> >> pool">
>> >> >>> >> > ..
>> >> >>> >> >
>> >> >>> >> >
>> >> >>> >> > but, when I start my application I got below error:
>> >> >>> >> >
>> >> >>> >> > Caused By: java.lang.IllegalArgumentException:
>> ExecutorServiceRef
>> >> >>> >> > my_thread_pool not found in registry or as a thread pool
>> profile.
>> >> >>> >> >
>> >> >>> >> >
>> >> >>> >> >
>> >> >>> >> > If I change the throttle from a threadPool to a
>> threadPoolProfile
>> >> it
>> >> >>> >> works.
>> >> >>> >> > So, why it is not working with a threadPool?
>> >> >>> >> >
>> >> >>> >> > Thanks.
>> >> >>> >>
>> >> >>> >>
>> >> >>> >>
>> >> >>> >> --
>> >> >>> >> Claus Ibsen
>> >> >>> >> -----------------
>> >> >>> >> http://davsclaus.com @davsclaus
>> >> >>> >> Camel in Action 2: https://www.manning.com/ibsen2
>> >> >>> >>
>> >> >>>
>> >> >>>
>> >> >>>
>> >> >>> --
>> >> >>> Claus Ibsen
>> >> >>> -----------------
>> >> >>> http://davsclaus.com @davsclaus
>> >> >>> Camel in Action 2: https://www.manning.com/ibsen2
>> >> >>>
>> >> >
>> >> >
>> >> >
>> >> > --
>> >> > Claus Ibsen
>> >> > -----------------
>> >> > http://davsclaus.com @davsclaus
>> >> > Camel in Action 2: https://www.manning.com/ibsen2
>> >>
>> >>
>> >>
>> >> --
>> >> Claus Ibsen
>> >> -----------------
>> >> http://davsclaus.com @davsclaus
>> >> Camel in Action 2: https://www.manning.com/ibsen2
>> >>
>>
>>
>>
>> --
>> Claus Ibsen
>> -----------------
>> http://davsclaus.com @davsclaus
>> Camel in Action 2: https://www.manning.com/ibsen2
>>



--
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2
Loading...