RSS Feed Importer

I’m using the PSOBatchImporter from the community marketing solution. It was originally setup many moons ago for importing an external RSS feed, unfortunately the business that provided that feed went out of business, so we never did complete this importer.

Now I’m trying to get it running again on a different rss feed but I’m having a little difficulty. The import is shown as successful but nothing is actually created in Rhythmyx. In the log file for the import I see the following types of entries:

[java] DEBUG [FeedParser] - executing field import_uri expression: $item.Uri;
[java] DEBUG [FeedParser] - Jexl Expression returned null
[java] DEBUG [FeedParser] - executing field import_source_url expression: $item.Link;
[java] DEBUG [FeedParser] - Jexl Expression returned null
[java] DEBUG [FeedParser] - executing field sys_lang expression: ‘en-ca’;
[java] DEBUG [FeedParser] - Setting field sys_lang to value en-ca
[java] DEBUG [FeedParser] - executing field sys_title expression: $item.Title;
[java] DEBUG [FeedParser] - Jexl Expression returned null

This is the RSS feed sample:

<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/" xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel>
        <item>
            <Uri>1234</Uri>
            <Link>http://www.google.ca</Link>
            <Title>Application of Computer-Assisted Audit Techniques, second edition</Title>
            <PublishedDate>1999-Jun-15</PublishedDate>
            <Keywords>IFRS, Test</Keywords>
            <Description>
                Designed to assist internal and external auditors of both large and small enterprises, as well as to CFOs, CIOs and other executives and their staff who can benefit from the use of computer-assisted audit techniques (CAATs) in their work, to perform more effective and efficient risk assessment, certification, and compliance audits.
            </Description>
            <Category>Accounting and Assurance</Category>
            <SubCategory>Accounting</SubCategory>
            <ImgURL>http://www.castore.ca//ContentImages/kStore/Covers/638.gif</ImgURL>
        </item>
        <item>
            <Uri>5678</Uri>
            <Link>http://www.google.ca</Link>
            <Title>Application of Computer-Assisted Audit Techniques, second edition</Title>
            <PublishedDate>1999-Jun-15</PublishedDate>
            <Keywords>IFRS, Test</Keywords>
            <Description>
                Designed to assist internal and external auditors of both large and small enterprises, as well as to CFOs, CIOs and other executives and their staff who can benefit from the use of computer-assisted audit techniques (CAATs) in their work, to perform more effective and efficient risk assessment, certification, and compliance audits.
            </Description>
            <Category>Accounting and Assurance</Category>
            <SubCategory>Accounting</SubCategory>
            <ImgURL>http://www.castore.ca//ContentImages/kStore/Covers/638.gif</ImgURL>
        </item>
    </channel>
</rss>

And this is the mapping in the spring.xml for the importer:

		<property name="fieldMap">
			<map>
				<entry key="import_uri">
					<value>$item.Uri;</value>
				</entry>
				<entry key="import_source_url">
					<value>$item.Link;</value>
				</entry>
                <entry key="sys_lang">
                    <value>'en-ca';</value>
                </entry>
				<entry key="sys_title">
					<value>$item.Title;</value>
				</entry>
                <entry key="displaytitle">
                    <value>$item.Title;</value>
                </entry>
                <entry key="sys_contentstartdate">
                    <value>$item.PublishedDate;</value>
                </entry>
				<entry key="sys_contentexpirydate">
				    <value>$now=$tools.date.getCalendar();$weekday=$now.get(7); $days = ( 7 - $weekday ) + 1;$now.add(6,$days.intValue());$tools.date.format('yyyy-MM-dd',$now.getTime());</value>
				</entry>				
                <entry key="keywords">
				    <value>$item.Keywords;</value>
				</entry>
                <entry key="description">
                    <value>$item.Description;</value>
                </entry>
                <entry key="category">
                    <value>$item.Category;</value>
                </entry>
                <entry key="subcategory">
                    <value>$item.SubCategory;</value>
                </entry>
                <entry key="imgURL">
                    <value>$item.ImgURL;</value>
                </entry>
                <entry key="teaser">
                    <value>$item.Description;</value>
                </entry>			
			</map>
		</property>

Does anyone have any thoughts on this?

Shane

Shane, I wonder if the debug mode is turned on. The log doesn’t return any content ids for imported items? PSO has a new version of the RSS Feed Importer but I don’t know how upgrades are done for those type of solutions.

Thanks the reply Riley. Debug is not turned on for this. There is an updated importer but I’m not sure how to get it or implement it as Percussion is not responding to my messages but I’ll try and get a hold of it anyway.

Back to my original problem, I did figure out what the issue was. In my XML file I had all the nodes with capitalized (e.g. <Item>) when it should all be lower case, so that seem to work. However, some of the nodes are still not being imported, more specifically those nodes which are not elements normally found in an RSS feed (e.g. imgurl, keywords, subcategory) and then I’m not getting some nodes (e.g. category) which are normally found in RSS feeds being imported either. So some are coming through, some are not.

Shane

Shane,

Are you going through Support to ask about the upgrade? They’ve been fairly quick with responses for me.

Back to your problem, our version of the Feed Importer has a
that contains another set of fields to be imported. You may also try:

<entry name="keywords">
    <value>$item.Keywords.Value;</value>
</entry>

</property>

Hey guys,

There is a new Content Explorer oriented importer for RSS feeds that Stephen Bolton and myself in Percussion PSO collaborated on that we have deployed at several customers. I think there was a Webinar on it a couple months back. With 7.0.3 coming soon, and the busy project schedule and backlog that we have been working, we have been holding off on deploying or updating that package to anyone that doesn’t already have it, limitting it to new deployments. This is to fix some remaining minor (but annoying) packaging glitches, improve documentation, and QA on the new CM System version.

If you do have a need for the package sooner and on 6.7, I am sure you could engage PSO to expedite the release, but in the mean time, it should be more readily available shortly following 7.0.3.

Let me know if you have any questions.

Thanks,

-nate

Is the new version of this going to be released with 7.0.3? I was told there were going to be additions made to this in the past to make the creation of more dynamic. I am just curious the direction of what we can do with it in the future.

Also what is the easiest way to import items into a child table through the feed importer?

Hi Nate
Did the updated version of the importer make it to GitHub and is it compatible with Rhythmyx 7.3?
Thanks,
Dan