Sunday, February 20, 2011

Argotic Syndication Framework Desillusion

When I discovered Argotic Syndication Framework a few hours ago, I thought : One to rule them all. They say on their web site that I don't have to speak the syndication langage.

But, I failed to make it work on the first syndication feeds I tried :

blog.free.fr atom feeds generated with dotclear raise the following exception :
   at Argotic.Common.Guard.ArgumentNotNullOrEmptyString(String value, String name)
at Argotic.Syndication.AtomPersonConstruct.set_Name(String value)
at Argotic.Syndication.AtomPersonConstruct.Load(XPathNavigator source)
at Argotic.Syndication.AtomPersonConstruct.Load(XPathNavigator source, SyndicationResourceLoadSettings settings)
at Argotic.Data.Adapters.Atom10SyndicationResourceAdapter.FillFeedCollections(AtomFeed feed, XPathNavigator source, XmlNamespaceManager manager, SyndicationResourceLoadSettings settings)
at Argotic.Data.Adapters.Atom10SyndicationResourceAdapter.Fill(AtomFeed resource)
at Argotic.Data.Adapters.SyndicationResourceAdapter.FillAtomResource(ISyndicationResource resource, SyndicationResourceMetadata resourceMetadata)
at Argotic.Data.Adapters.SyndicationResourceAdapter.Fill(ISyndicationResource resource, SyndicationContentFormat format)
at Argotic.Syndication.AtomFeed.Load(XPathNavigator navigator, SyndicationResourceLoadSettings settings, SyndicationResourceLoadedEventArgs eventData)
at Argotic.Syndication.AtomFeed.Load(Uri source, ICredentials credentials, IWebProxy proxy, SyndicationResourceLoadSettings settings)
at Argotic.Syndication.AtomFeed.Create(Uri source, ICredentials credentials, IWebProxy proxy, SyndicationResourceLoadSettings settings)
at Argotic.Syndication.AtomFeed.Create(Uri source, SyndicationResourceLoadSettings settings)
at Argotic.Syndication.AtomFeed.Create(Uri source)
It fails to parse publication dates in Univers Freebox syndication feeds or Slashdot feeds.

Well, it seems I have to learn this langage anyway...

Edit : After failing again on slashdot feeds with .NET 3.5 classes, I found Peter's blog. Actually my code was getting closer to his solution.

No comments: