jAPS 2.0 entando- Plugin Rss

Do It The jAPS Way

Eugenio Santoboni

Revisore 
Chief Solution Engineer
AgileTec s.r.l.

William Ghelfi

Revisore 
Chief Interaction Designer
Tzente s.r.l.

Stefano Puddu

Prima e Completa versione in Italiano 
AgileTec s.r.l.

Rinaldo Bonazzo

Prima e Completa versione in Italiano 
AgileTec s.r.l.

Legal Notice

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the Appendix entitled "GNU Free Documentation License".

The copyright holders make no representation about the suitability of this Document for any purpose. It is provided «as is» without expressed or implied warranty. If you modify this Document in any way, identify your resulting Document as a variant of this Document.

2011-02-14

Diario delle Revisioni
Revisione 1.32011-02-14MEM

Revisione per il rilascio di jAPS 2.0 entando 2.2.0

Revisione 1.22010-02-22MEM

Revisione per il rilascio di jAPS 2.0.10

Revisione 1.12009-10-20MEM

Revisione per il rilascio di jAPS jAPS 2.0.8

Revisione 1.02009-05-22WG

La revisione di questo documento sarà ultimata quando il documento Pattern Integrazione Servizi sarà completamente tradotto e referenziato

Estratto

Lo scopo di questo documento è quello di fornire una descrizione completa della struttura del Plugin Rss.


Lista delle Tabelle

2.1. Riassunto delle caratteristiche

Capitolo 1. Scopo del Documento

Introduzione

Lo scopo di questo documento è quello di fornire una descrizione completa della struttura del Plugin jprss.

A chi è destinato

Questo documento è destinato a chi intende conoscere le funzionalità del jAPSPlugin jprss, e sta prendendo in considerazione la eventuale integrazione in un Ambiente di Produzione già funzionante o nel proprio Ambiente di Sviluppo (Progetto in IDE Eclipse).

Il documento è indirizzato sia a Sistemisti (responsabili di installazioni di Applicazioni su base jAPS2 2.0 entando) che a Java Developers (con una conoscenza base del Framework jAPS 2.0 entando).

Prerequisiti

Per poter utilizzare efficacemente le informazioni contenute in questo documento, occorre un po' di esperienza su alcune tecnologie del web base: la piattaforma Java, gli strumenti di sviluppo Eclipse, il servlet engine Apache Tomcat, il database PostgreSQL, e del Framework jAPS2.

Riferimenti

Ulteriori informazioni possono essere richieste attraverso la mailing list ufficiale Google Group "japs-platform".

Per mandare un messaggio ai membri della lista, invia una mail a .

È inoltre possibile consultare la documentazione presente in:

jAPS 2.0 entando Project - Sito per gli sviluppatori

Capitolo 2. Caratteristiche del Plugin

Caratteristiche del Plugin

Il Plugin jprss consente di erogare i contenuti del portale in formato RSS.

Tabella 2.1. Riassunto delle caratteristiche

CodiceNomeTipoVersione del PluginVersione di jAPS 2.0 entando
jprssRSSPurePlugin1.22.2.0 -
jprssRSSPurePlugin1.12.0.8 - 2.0.10
jprssRSSPurePlugin1.02.0.6

Prerequisiti

Questo modulo richiede la presenza del seguente plugin:

  • jacms version 2.2.0

Dalla versione jAPS 2.0.8 jacms è fornito in bundle con jAPS2 stesso, non richiedendo alcuna installazione aggiuntiva da parte dell'utente finale.

Funzionalità

Il modulo presenta:

  • Una interfaccia del Back-End tramite il quale l'amministratore può creare e gestire i canali di erogazione dei contenuti in formato RSS. Tale interfaccia aderisce perfettamente alla grafica ed impostazione del Back-End ed è accessibile attraverso una voce del menù Plugin.

  • Una showlet tramite la quale fornire dal Front-End l'elenco dei canali attivi, con il relativo link.

Sul Front-End i canali RSS vengono resi disponibili tramite link cosi configurati:

				http://indirizzoSito:8080/mioportale/do/jprss/Rss/Feed/show.action?id=id del canale RSS
			

dove 'indirizzoSito' è l'ip del portale 'mioportale' e 'id' è l'ID del contenuto servito

Capitolo 3. Installazione ed integrazione

Installazione ed integrazione

Il Plugin jprss consente di erogare i contenuti del portale in formato RSS.

Il plugin ha la caratteristica di PurePlugin, la sua installazione non modifica nessuna funzionalità presente nel sistema.

Descrizione del Pacchetto

Il pacchetto del Plugin contiene l'insieme delle cartelle (cartelle doc ed src più il file Readme) definite nel documento di descrizione generale del jAPSPlugin Pattern.

In particolare, la directory src è strutturata come di seguito descritto:

  • Directory java. Contiene le sorgenti java complete e i test jUnit del Plugin.

  • Directory sql. Contiene gli script da eseguire nei db port e serv principali e di test.

  • Directory webapp. La directory contiene tutti i file necessari alla webapp. In particolare, la directory contiene i file (jsp) relativi alla interfacce utente ed i file di configurazione delle stesse, i file di definizione dei bean a servizio (sia del layer di Business del Modello di jAPS 2.0 entando, che nelle action di Struts 2 relative al Layer di Presentation), le librerie (compresa la libreria ricavata dalle sorgenti java date in dotazione), le risorse statiche necessarie (css, immagini, e js).

Integrazione in Ambiente di Produzione

Per definizione, chiameremo l'applicazione sulla quale si deve installare il plugin con il nome di miawebapp.

Per eseguire l'installazione in una applicazione Web in produzione basata sulla versione di jAPS 2.0 entando dichiarata compatibile con il Plugin, i passi da eseguire sono i seguenti:

  1. Interrompere l'esecuzione del servlet container

  2. Copiare il contenuto della directory src/webapp/WEB-INF/lib del pacchetto dato in dotazione, all'interno della directory miawebapp/WEB-INF/lib/ in produzione.

  3. Assicurarsi che la cartella miawebapp/webapp/WEB-INF/plugins esista, creandola se necessario. Copiare il contenuto della directory src/webapp/WEB-INF/plugins del pacchetto dato in dotazione, all'interno della directory miawebapp/WEB-INF/plugins/ in produzione.

  4. Copiare il contenuto della directory src/webapp/resources/plugins del pacchetto dato in dotazione, all'interno della directory miawebapp/resources/plugins/ in produzione.

  5. Eseguire i task contenuti nel file portScript.sql (contenuto nella directory src/sql del pacchetto dato in dotazione) nel db port in produzione. Lo script è strutturato ipotizzando il parametro version impostato a production (variare se il version dell'ambiente di produzione è diverso). Modificare la query inserendo le opportune modifiche per i seguenti valori: CONTENT_TYPE, ATTRIBUTE_NAME e MAX_ITEMS.

  6. Lo script è strutturato ipotizzando il version production (variare se il version dell'ambiente di produzione è diverso). Modificare la struttura del modello del profilo secondo le necessità.

  7. Eseguire i task contenuti nel file servScript.sql (contenuto nella directory src/sql del pacchetto dato in dotazione) nel db serv in produzione.

Installazione in Ambiente di Sviluppo

Per definizione, chiameremo il progetto sul quale si deve installare il plugin con il nome di mioprogetto.

Per eseguire l'installazione in un progetto Eclipse basato sulla versione di jAPS 2.0 entando dichiarata compatibile con il Plugin, i passi da eseguire sono i seguenti:

  1. Copiare il contenuto della directory src/webapp/WEB-INF/lib del pacchetto dato in dotazione, all'interno della directory mioprogetto/WebContent/WEB-INF/lib/, con l'esclusione del file jAPSPlugin-jprss-1.1.jar.

  2. Assicurarsi che la cartella mioprogetto/WebContent/WEB-INF/plugins/ esista, creandola se necessario. Copiare il contenuto della directory src/webapp/WEB-INF/plugins del pacchetto dato in dotazione, all'interno della directory mioprogetto/WebContent/WEB-INF/plugins/.

  3. Copiare il contenuto della directory src/webapp/resources/plugins del pacchetto dato in dotazione, all'interno della directory mioprogetto/WebContent/resources/plugins/.

  4. Eseguire i task contenuti nel file portScript.sql (contenuto nella directory src/sql del pacchetto dato in dotazione) nel proprio db port. Lo script è strutturato ipotizzando il parametro version impostato a production (variare se il version dell'ambiente di produzione è diverso). Modificare la query inserendo le opportune modifiche per i seguenti valori: CONTENT_TYPE, ATTRIBUTE_NAME e MAX_ITEMS.

  5. Eseguire i task contenuti nel file servScript.sql (contenuto nella directory src/sql del pacchetto dato in dotazione) nel proprio db serv.

  6. Eseguire i task contenuti nel file portTestScript.sql (contenuto nella directory src/sql del pacchetto dato in dotazione) nel proprio db port di test.

  7. Eseguire i task contenuti nel file servTestScript.sql (contenuto nella directory src/sql del pacchetto dato in dotazione) nel proprio db serv di test.

  8. Copiare il contenuto della directory src/java/main/com nella directory mioprogetto/src/com del proprio progetto.

  9. Copiare il contenuto della directory src/java/test/test nella directory mioprogetto/src/test del proprio progetto.

  10. Copiare il file src/java/main/jprss_japs-struts-plugin.xml in mioprogetto/src/. Nel caso in cui nella directory src del progetto Eclipse sia già presente un file di nome japs-struts-plugin.xml, copiare il contenuto del tag <struts> del file jprss_japs-struts-plugin.xml all'interno del file japs-struts-plugin.xml esistente e cancellare il file jprss_japs-struts-plugin.xml. Nel caso in cui nella directory src del progetto Eclipse non sia presente un file di nome japs-struts-plugin.xml, rinominare il file jprss_japs-struts-plugin.xml in japs-struts-plugin.xml.

  11. Eliminare o commentare (attraverso un commento java) il metodo getSpringConfigFilePaths() della classe JpRssConfigTestUtils.java nel package test.com.agiletec.plugins.jprss.

  12. Eliminare o commentare (attraverso un commento java) il metodo setInitParameters() della classe JpRssApsAdminBaseTestCase.java nel package test.com.agiletec.plugins.jprss.apsadmin.

Una volta eseguiti i passi sopra descritti, far partire il progetto da Eclipse e verificare la presenza della voce specifica di menù nell'area di amministrazione del progetto.

Capitolo 4. Configurazione dei canali RSS

Configurazione dei canali RSS

Nota: le immagini sottostanti potrebbero differire da quelle attuali del backend, in ogni caso la logica di funzionamento è rimasta per lo più invariata rispetto alle versioni precedenti. Di seguito un breve paragravo che sottolinea l'unico cambiomento che semplifica il processo di installazione e di configurazione.

Il plugin RSS si avvantaggia di una delle nuove funzionalità di jAPS 2.0 entando, ovvero il ruolo attributo. A dimostrazione di ciò, l'item di configurazione "jprss_config" nella tabella "sysconfig" è stato rimosso.

Prima di configurare i canali RSS bisogna decidere quali tipo di contenuti devono essere pubblicati. Adesso che l'item di configurazione non esiste più è il ruolo a decidere quale attributo diverrà, ad esempio, il titolo del feed rss.

A tal fine bisogna editare il tipo di contenuto che si vuole pubblicare in formato rss: nella lista degli attributi editare un attributo di vostra scelta che diverrà, per esempio, il titolo. A questo punto nella select "Ruoli" bisogna scegliere uno dei ruoli inseriti nel sistema dal plugin:

  • jprss:title - attributo che contiene il titolo del feed

  • jprss:description - attributo che contiene la descrizione del feed.

Confermare premendo "Aggiungi", e quindi continuare la configurazione dell'attributo premento il bottone "salva" alla fine. Una volta assegnati ad due attributi del tipo di contenuto i due ruoli di cui sopra è possibile entrare nell'area di amimnistrazione del plugin.

Per accedere all'interfaccia di amministrazione seguire i seguenti passi:

  1. Accedere all'area di amministrazione del portale

  2. Plugin

  3. RSS

Appare la finestra di benvenuto con due icone:

Lista Canali RSS

Lista dei Canali RSS presenti nel portale

Cliccando sul link Nuovo Canale appare la seguente finestra:

Nuovo Canale RSS

Scelta tipo contenuto che verrà usato per la creazione del canale RSS

Una volta selezionato il tipo di contenuto ci verrà chiesto di perfezionare la creazione del nuovo canale RSS inserendo i campi di cui in figura:

Nuovo Canale RSS

Dati del nuovo canale RSS

Inserire le informazioni relative a :

  • Titolo del canale RSS

  • Descrizione del canale RSS

  • Canale RSS attivo o meno

  • Definizione del tipo di RSS

  • Definizione della Categoria del Canale RSS

  • Definizione degli eventuali Filtri (Vedere paragrafo successivo per la gestione dei filtri)

una volta confermati i dati il canale RSS è disponibile per essere inserito in front-end.

Definizione dei Filtri: Se fosse necessario gestire dei filtri per il canale RSS selezionare Aggiungi nel box filtri della figura precedente appare dunque la seguente finestra:

Creazione Filtri Canale RSS

Gestione Filtri per Canale RSS

I filtri sono configurabili a seconda dei Tipi di Attributo di Contenuto presenti nel Tipo di Contenuto che viene utilizzato per il canale RSS.

Esempio 4.1. Esempio di filtro di tipo Data

Configurazione del filtro data del canale RSS

Creazione Filtro di tipo Data per Canale RSS


Esempio 4.2. Esempio di filtro di tipo Testo

Creazione Filtri di tipo Testo per Canale RSS

Creazione Filtro di tipo Testo per Canale RSS


Risultato atteso se si applicano i due esempi precedenti ad un canale RSS

Risultato configurazione Canale RSS

Risultato configurazione Canale RSS