Got further.
What version of abdera does this work with. I have downloaded the latest
which is 0.3.0 and it doesn't seem to contain the getInstance method used
here.
Abdera.getInstance().getParser();
if I use Abdera.getNewParser() it works ok.
Any ideas please?
jpcook wrote:
>
> Strange just using the http endpoint works fine.
>
>
> jpcook wrote:
>>
>> Hi,
>>
>> So just trying a very simple example like:
>> from("atom://http://macstrac.blogspot.com/feeds/posts/default").to("log:afterAtom");
>>
>> But it returns:
>> 2009-09-30 12:05:04,650 INFO [main] afterAtom - Exchange[BodyType:null,
>> Body:null]
>>
>> No errors in the console so not sure what I'm doing wrong?
>>
>>
>> Claus Ibsen-2 wrote:
>>>
>>> On Mon, Sep 28, 2009 at 10:05 AM, jpcook <[email protected]>
>>> wrote:
>>>>
>>>> Thanks!
>>>>
>>>> One last probably silly question. What you initialise consumerTemplate
>>>> as or
>>>> do you extend from a particular class for this to work?
>>>>
>>>> We're not using Spring so can't do any injection as per another thread
>>>> I
>>>> saw.
>>>>
>>>
>>> You can create a consumer template from the CamelContext
>>> And then you can reuse it on subsequent invocations.
>>>
>>> If you use a bean/pojo you can just have a CamelContext parameter in
>>> the method signature and Camel will inject the context for you.
>>>
>>> If you use a processor then you can get hold of the CamelContext from
>>> the Exchange using getContext()
>>>
>>> public void doSomething(CamelContext context) {
>>> if (consumerTemplate == null) {
>>> consumerTemplate = context.createConsumerTemplate();
>>> }
>>>
>>>
>>>> And then does the url actually contain the atom part? Looking at the
>>>> wiki
>>>> page it would indicate it should do eg) Exchange exchange =
>>>> consumerTemplate.receive("activemq:my.queue");
>>>>
>>>
>>> Yeah you need to use the complete URL
>>> consumerTemplate.receive("atom://and some more here");
>>>
>>>
>>>
>>>>
>>>>
>>>> Claus Ibsen-2 wrote:
>>>>>
>>>>> On Fri, Sep 25, 2009 at 1:02 PM, jpcook <[email protected]>
>>>>> wrote:
>>>>>>
>>>>>> thanks
>>>>>>
>>>>>> The atom endpoint already has consumer.delay which I think I would
>>>>>> use.
>>>>>
>>>>> Yeah but the atom endpoint will then be configured with a static
>>>>> endpoint
>>>>> URI
>>>>> from("atom:staticUriHere?consumer.delay=5000")...
>>>>>
>>>>> Where as if you use a processor/bean/ with a consumer template you can
>>>>> do
>>>>>
>>>>> from("timer://foo?delay=5000").beanRef("myBean", "doSomething)
>>>>>
>>>>> And then in your POJO you can poll the atom endpoint using a dynamic
>>>>> URI
>>>>>
>>>>> private List<String> uris;
>>>>>
>>>>> public void doSomething() {
>>>>> // loop the list of dynamic uris and get the content from it
>>>>> // and then consume from the endpoint using consumer template
>>>>> Exchange out = consumerTemplate.receive(uri, 1000);
>>>>> }
>>>>>
>>>>> And see that link Charles mentioned.
>>>>>
>>>>>
>>>>>>
>>>>>> Is there an example of the consumerTemplate?
>>>>>>
>>>>>> Could I use the web-console to configure the dynamic uris or just a
>>>>>> normal
>>>>>> xml configuration file?
>>>>>>
>>>>>> About the last point, that is how I have done it in the past but just
>>>>>> thought I'd check if there was something built into camel now. :)
>>>>>>
>>>>>>
>>>>>>
>>>>>> Claus Ibsen-2 wrote:
>>>>>>>
>>>>>>> Hi
>>>>>>>
>>>>>>> You can use a scheduler / timer to trigger a route at a certain
>>>>>>> interval (quartz or timer)
>>>>>>>
>>>>>>> And then use a processor / bean with a consumerTemplate to consume
>>>>>>> from the atom feeds.
>>>>>>> Then you can use dynamic URIs.
>>>>>>>
>>>>>>> And if you want that to route in parallel you can use the JDK
>>>>>>> concurrency API for that as well.
>>>>>>>
>>>>>>> Sometimes the easiest stuff is to do that using regular java in a
>>>>>>> POJO.
>>>>>>> Submit tasks to the JDK executor services and then afterwards route
>>>>>>> the result to a file endpoint to store the file.
>>>>>>> Or a "direct" endpoint so you can do additional routing.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Fri, Sep 25, 2009 at 12:02 PM, jpcook
>>>>>>> <[email protected]>
>>>>>>> wrote:
>>>>>>>>
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> I have a requirement to pull 24 atom feeds, process them in the
>>>>>>>> same
>>>>>>>> way
>>>>>>>> via
>>>>>>>> xslt and then write the results to a file location which is
>>>>>>>> slightly
>>>>>>>> different for each feed. This is fairly straight forward.
>>>>>>>>
>>>>>>>> I was looking at the atom component as it looks almost perfect. But
>>>>>>>> I
>>>>>>>> wondered if there was a clever way I could maybe specify a list of
>>>>>>>> urls
>>>>>>>> to
>>>>>>>> the component and then it could process them concurrently as I
>>>>>>>> don't
>>>>>>>> want
>>>>>>>> to
>>>>>>>> have to do this synchronously? A bit like when you use the splitter
>>>>>>>> you
>>>>>>>> can
>>>>>>>> specify parallelProcessing()
>>>>>>>>
>>>>>>>> I guess another alternative would be to have a route for each feed
>>>>>>>> I
>>>>>>>> need
>>>>>>>> to
>>>>>>>> pull but this seemed a bit overkill as they would essentially be
>>>>>>>> all
>>>>>>>> the
>>>>>>>> same. Also I wanted to make the atom urls and the location that the
>>>>>>>> result
>>>>>>>> gets written to configurable but we are not using the spring dsl
>>>>>>>> xml
>>>>>>>> configuration. As an alternative I could make these parameters
>>>>>>>> configurable
>>>>>>>> via my own configuration but I also wondered if I could perhaps
>>>>>>>> control
>>>>>>>> these parameters via JMX or even better via the web console?
>>>>>>>>
>>>>>>>> Any thoughts much appreciated. Thanks.
>>>>>>>> --
>>>>>>>> View this message in context:
>>>>>>>> http://www.nabble.com/Atom-Component-tp25609495p25609495.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/Atom-Component-tp25609495p25610124.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/Atom-Component-tp25609495p25641681.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/Atom-Component-tp25609495p25681054.html
Sent from the Camel - Users mailing list archive at Nabble.com.