Skip to content

Entando plugin: RSS Aggregator

Matteo E. Minnai edited this page Mar 20, 2013 · 3 revisions

Entando plugin RSS Aggregator

Installation and configuration of entando-plugin-jprssaggregator

Table of Contents

Introduction

The purpose of this document is to provide a complete description of the Entando RSS Aggregator plugin whose code is entando-plugin-jprssaggregator (simply jprssaggregator throughout this guide) for the Entando platform.

Target Audience

This document is intended for both administrators and developers who wish to explore the capabilities of the Entando Plugin RSS Aggregator and are considering a possible integration into a running production environment or in a Development Environment.

Prerequisites

In order to take maximum advantage from the present document, it is necessary to have basic knowledge of the Java platform, the servlet engine Apache Tomcat, PostgreSQL (or MySQL) DBMS and the Entando platform.

Moreover, it's necessary to have read the Plugin Pattern document for the installation procedure and an explanation of the standard directory layout.

top

Overview

The Rss Aggregator converts the feeds of a specified URL into standard Entando contents. The RSS sources are organized in lists: each of the sources is periodically updated so to have the corresponding contents always synchronized. Once imported, the RSS feeds are Entando contents in all respects and are treated in the same way of the others. Deleting the RSS channel does not result in the deletion of the imported contents.

Though the plugin installation is not difficult at all, we are going to modify the system tables, so a backup of your database is highly recommended. Furthermore, you may be required to customize the scripts to your needs before installation.

For the purpose of the current document, a few Maven and Ant commands are shown: your IDE has probably the ability to execute those command for you in background.

Technical specification

The jprssaggregator plugin is classified as a modification because its installation overwrites the LinkAttribute manager bean.

Packages

jprssaggregator directories are organized following the Maven Standard Directory Layout as shown in the Plugin Pattern.

Installation in a development environment

It is worth noting that the plugin installation is greatly changed from the previous releases (thank you, Maven!).

As always when it comes down to install new things, stop your servlet container before moving on.

Open the pom.xml of your project: locate the <dependencies> tag toward the end of the file, after the <build> tag; if the tag dependencies doesn't exist just create a new one just after the closure of the build tag.

Add the following snippet inside the dependencies:

            <dependency>
                <groupId>org.entando.entando.plugins</groupId>
                <artifactId>entando-plugin-jprssaggregator</artifactId>
                <version>${entando.version}</version><!-- version. Don't remove this comment. -->
                <type>war</type>
            </dependency>

You are done! You can verify the correct installation of the plugin going to the administration area and checking for the new item in the Plugins menu.

Installation in a production environment

From now we will use the name myportal when referring to your deployed Entando application or, in other words, to the artifact ID of the deployed portal.

All Entando plugins can be downloaded from the Maven Central repository, just filter by code and by version.

To install jprssaggregator in a production environment the file entando-plugin-jprssaggregator-3.2.0.war is needed; we will refer to this file as WAR package.

The WAR package might contain the dependencies of other plugins; when performing copy operations you may accidentally overwrite your previous customizations of the JSP files, so you are warmly recommended to create a backup of your installation.

The integration activity must be performed after the servlet container has been stopped.

  • copy the content of the directory WEB-INF/lib of the WAR package into myportal/WEB-INF/lib/ within the server container

  • make sure that the directory myportal/WEB-INF/plugins/ exists otherwise create it. Copy the content of the directory WEB-INF/plugins of the WAR package into myportal/WEB-INF/plugins/ within the server container

  • copy the content of the directory resources/plugins of the package into myportal/resources/plugins/

Now the servlet container can be restarted.

top

Configuration

To import RSS feeds from an external sources you have to configure (or use) a suitable content type. This content must have the following attributes:

  • a Text that holds the title of the feed

  • a Hypertext or Text that contains the body of the feed

  • a Link with the option searcheable="true" set, which contains the source URL

  • a Monotext attribute type to contain the ID of the source.

The following images shows a content type suitable for use by the plugin:

As a side note, the role jacm:title attribute assigned to the Title attribute in the image above is not necessary for the plugin to work.

Once we have created the new content type or found a suitable one, we proceed with creation of the first channel left menu → PluginsRSS Aggregator

The welcome interface shown has the administration icons on the top right: the first on the left is the add a new channel icon and next to it the channel list:

Click on the create new channel icon:

This interface is pretty straightforward; the only note is for the Content Type select: it shows only all those content types suitable to be used by the RSS aggregator.

In the Categories Management section you can optionally add the category whose retrieved contents will belong to

After saving the new channel configuration you are redirected to the channel list interface:

The list gives the overall status of the channel and offers the possibility to manage the channel: to edit the channel properties just click on the description or to the Edit link; the other immediate possibilities includes the synchronization and the removal of the channel itself.

Upon completion of the channel creation process the aggregator starts collecting RSS feeds. In the content management area you can now see the newly imported contents

top

Clone this wiki locally