Camel Atom Integration issues
-----------------------------
Key: SWITCHYARD-282
URL:
https://issues.jboss.org/browse/SWITCHYARD-282
Project: SwitchYard
Issue Type: Bug
Components: component-camel
Affects Versions: 0.1
Environment: Fedora 14, jdk1.6 update 22
Reporter: Boris Belovic
I noticed there is a support for Atom feeds in SwitchYard - there is support in schema and
configuration model. I didn't try directly this for polling Atom feeds, instead I
tried common camel.binding element in switchyard.xml:
<service name="GreetingService" promote="GreetingService">
<camel:binding.camel
xmlns:camel="urn:switchyard-component-camel:config:1.0"
configURI="atom://http://markclittle.blogspot.com/feeds/post/default...
</service>
I deployed SwitchYard service and got this exception:
17:08:56,767 INFO [org.apache.camel.impl.DefaultCamelContext] Apache Camel 2.6.0
(CamelContext: camel-4) is starting
17:08:56,768 INFO [org.apache.camel.impl.DefaultCamelContext] JMX enabled. Using
ManagedManagementStrategy.
17:08:56,838 INFO [org.apache.camel.impl.converter.AnnotationTypeConverterLoader] Found 5
packages with 17 @Converter classes to load
17:08:56,844 INFO [org.apache.camel.impl.converter.DefaultTypeConverter] Loaded 163 type
converters in 0.037 seconds
17:08:56,923 INFO [org.apache.camel.impl.DefaultCamelContext] Total 0 routes, of which 0
is started.
17:08:56,924 INFO [org.apache.camel.impl.DefaultCamelContext] Apache Camel 2.6.0
(CamelContext: camel-4) started in 0.156 seconds
17:08:57,133 INFO [org.apache.camel.impl.DefaultCamelContext] Route:
GreetingService-[atom://http://markclittle.blogspot.com/feeds/posts/default] started and
consuming from:
Endpoint[atom://http://markclittle.blogspot.com/feeds/posts/default]
17:08:58,566 WARN [org.apache.camel.impl.DefaultPollingConsumerPollStrategy] Consumer
Consumer[atom://http://markclittle.blogspot.com/feeds/posts/default] could not poll
endpoint:
atom://http://markclittle.blogspot.com/feeds/posts/default caused by:
java.lang.IllegalStateException: This factory is immutable:
org.apache.abdera.parser.ParseException: java.lang.IllegalStateException: This factory is
immutable
at org.apache.abdera.parser.stax.FOMParser.parse(FOMParser.java:125) [:0.4.0-incubating]
at org.apache.abdera.util.AbstractParser.parse(AbstractParser.java:66)
[:0.4.0-incubating]
at org.apache.camel.component.atom.AtomUtils.parseDocument(AtomUtils.java:55) [:2.6.0]
at
org.apache.camel.component.atom.AtomEntryPollingConsumer.getDocument(AtomEntryPollingConsumer.java:43)
[:2.6.0]
at
org.apache.camel.component.atom.AtomEntryPollingConsumer.createFeed(AtomEntryPollingConsumer.java:65)
[:2.6.0]
at
org.apache.camel.component.feed.FeedEntryPollingConsumer.poll(FeedEntryPollingConsumer.java:46)
[:2.6.0]
at org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:97)
[:2.6.0]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) [:1.6.0_22]
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
[:1.6.0_22]
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150) [:1.6.0_22]
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
[:1.6.0_22]
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
[:1.6.0_22]
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
[:1.6.0_22]
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
[:1.6.0_22]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
[:1.6.0_22]
at java.lang.Thread.run(Thread.java:662) [:1.6.0_22]
Caused by: java.lang.IllegalStateException: This factory is immutable
at
org.apache.axiom.util.stax.wrapper.ImmutableXMLInputFactory.setProperty(ImmutableXMLInputFactory.java:47)
[:]
at org.apache.abdera.parser.stax.FOMParser.getXMLInputFactory(FOMParser.java:155)
[:0.4.0-incubating]
at org.apache.abdera.parser.stax.FOMParser.createXMLStreamReader(FOMParser.java:167)
[:0.4.0-incubating]
at org.apache.abdera.parser.stax.FOMParser.parse(FOMParser.java:118) [:0.4.0-incubating]
... 15 more
I am not sure whether the problem is directly in SwitchYard or Camel, it might be that the
problem is in third party library that is used by Camel to poll Atom feeds.
Issue is in invoking setProperty() method on ImmutableXMLInputFactory instance, which
isn't permitted as it changes the state of a factory class (this is not allowed as the
factory class is immutable).
I am raising this JIRA to track down issue in SwitchYard/Camel/Atom integration.
--
This message is automatically generated by JIRA.
For more information on JIRA, see:
http://www.atlassian.com/software/jira