Publication de canaux
La méthode de publication de canaux a changé dans la version 3 d'esup.
Il existe toujours plusieurs type de canaux :
- Applet
- Image
- Inline Frame
- Portlet
- RSS
- Web Proxy Portlet
- Web Proxy
- XML SSL
- XML XSLT
- Custom
Vous pouvez retrouver les fichier CPD (Channel properties Definition) dans uPortal_rel-3.x.y/uportal-war/src/main/resources/org/jasig/portal/channels
Etapes
- Faire un fichier custom représentant la définition du canal : custom/uportal-impl/src/main/resources/properties/db/[MON_ETAB]/channel/[MON_CANAL].channel
- lancer l'import : db.import
Faire son fichier de publication
Créer un fichier custom/uportal-impl/src/main/resources/properties/db/[MON_ETAB]/channel/esup-annuaire.channel
<channel-definition script="classpath://org/jasig/portal/io/import-channel_v3-1.crn"> <title>Annuaires</title> <name>Annuaires</name> <fname>esup-annuaire</fname> <desc>Annuaires</desc> <type>Custom</type> <class>org.esupportail.portal.channels.CAnnuaire.CAnnuaire</class> <timeout>30000</timeout> <hasedit>N</hasedit> <hashelp>N</hashelp> <hasabout>N</hasabout> <secure>N</secure> <locale>en_US</locale> <categories> <category>Canaux eSup</category> </categories> <groups> <group>Tout le monde</group> </groups> <parameters/> </channel-definition>
Faire l'import
cd /home/esup-3.X.Y-esup-D.D-RCD ant db.import -Ddir=/home/home/esup-3.X.Y-esup-D.D-RCD/custom/uportal-impl/src/main/resources/properties/db/[MON_ETAB]/channel \ -Dpattern="esup-annuaire.*\.channel"
La target db.import permet de publier des canaux dans la base mais permet aussi de publier des groupes, des layout, des utilisateurs ...
On lui donne :
- dir : le dossier ou se situe les fichiers a insérer en base (par défaut le répertoire courant)
- pattern : une "expression régulière" pour filter ce que l'on veut importer
On peut donc aussi faire un import de tous les canaux (*.channel) en une passe :
cd /home/esup-3.X.Y-esup-D.D-RCD ant db.import -Ddir=/home/home/esup-3.X.Y-esup-D.D-RCD/custom/uportal-impl/src/main/resources/properties/db/[MON_ETAB] \ -Dpattern=".*\.channel"
Vous pouvez vous baser sur update/uPortal/uportal-impl/src/main/resources/properties/db/mini pour avoir plus d'exemples
Exemple de fichiers de publications
Tous les types de canaux vont comporter dans leurs fichier de publication :
- title : Titre affiché dans le portail
- name : Nom affiché dans le portail
- fname : Identifiant unique du canal dans le portail (permet l'accès direct a un canal)
- type : type du canal
- class : classe java instanciée pour lancer le canal
- timeout : temps au bout duquel le portail estime qu'il doit arrêter le rendu du canal
- category : emplacement dans lequel le canal sera disponible (lorsqu'un utilisateur va vouloir l'ajouter par l'interface)
- group : groupe de personnes autorisé à voir le canal ou à l'ajouter par l'interface
- parameters : va dépendre du type de canal
Custom
<channel-definition script="classpath://org/jasig/portal/io/import-channel_v3-1.crn"> <title>Test ID de Groupes</title> <name>Test ID de Groupes</name> <fname>groups-id</fname> <desc>Test ID de Groupes</desc> <type>Custom</type> <class>org.esupportail.portal.channels.CGroupes.CGroupes</class> <timeout>40000</timeout> <hasedit>N</hasedit> <hashelp>N</hashelp> <hasabout>N</hasabout> <secure>N</secure> <locale>en_US</locale> <categories> <category>Canaux eSup</category> </categories> <groups> <group>Administrateurs Portail</group> </groups> <users/> <parameters/> <portletPreferences/> </channel-definition>
Portlet
<channel-definition script="classpath://org/jasig/portal/io/import-channel_v3-1.crn"> <title>Helpdesk</title> <name>Helpdesk</name> <fname>esup-helpdesk</fname> <desc>SOS</desc> <type>Portlet</type> <class>org.jasig.portal.channels.portlet.CSpringPortletAdaptor</class> <timeout>60000</timeout> <hasedit>N</hasedit> <hashelp>N</hashelp> <hasabout>N</hasabout> <secure>N</secure> <locale>en_US</locale> <categories> <category>Canaux eSup</category> </categories> <groups> <group>Tout le monde</group> </groups> <parameters> <parameter> <name>portletApplicationId</name> <value>/esup-helpdesk</value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>portletName</name> <value>esup-helpdesk</value> <description/> <ovrd>N</ovrd> </parameter> </parameters> <portletPreferences/> </channel-definition>
Iframe
<channel-definition script="classpath://org/jasig/portal/io/import-channel_v3-1.crn"> <title>ESUP Portail Nouvelles</title> <name>ESUP Portail Nouvelles</name> <fname>esup-portail-nouvelles</fname> <desc>ESUP Portail Nouvelles</desc> <type>Inline Frame</type> <class>org.jasig.portal.channels.CInlineFrame</class> <timeout>30000</timeout> <hasedit>N</hasedit> <hashelp>N</hashelp> <hasabout>N</hasabout> <secure>N</secure> <locale>en_US</locale> <categories> <category>Canaux eSup</category> </categories> <groups> <group>Tout le monde</group> </groups> <users/> <parameters> <parameter> <name>height</name> <value>700</value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>name</name> <value>esup-portail-nouvelles</value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>url</name> <value>http://www.esup-portail.org/pages/viewrecentblogposts.action?key=ESUP</value> <description/> <ovrd>N</ovrd> </parameter> </parameters> <portletPreferences/> </channel-definition>
RSS
<channel-definition script="classpath://org/jasig/portal/io/import-channel_v3-1.crn"> <title>RSS ESUP Portail</title> <name>RSS ESUP Portail</name> <fname>esup-portail-rss</fname> <desc>RSS ESUP Portail</desc> <type>RSS</type> <class>org.jasig.portal.channels.CSyndFeed</class> <timeout>10000</timeout> <hasedit>N</hasedit> <hashelp>N</hashelp> <hasabout>N</hasabout> <secure>N</secure> <locale>en_US</locale> <categories> <category>Canaux eSup</category> </categories> <groups> <group>Tout le monde</group> </groups> <users/> <parameters> <parameter> <name>sslUri</name> <value>CGenericXSLT/RSS/RSS-universal.ssl</value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>xmlUri</name> <value>http://www.esup-portail.org/createrssfeed.action?types=page&sort=modified&spaces=conf_all&labelString%3D&rssType=rss2&maxResults=10&timeSpan=200&publicFeed=true&title=RSS-esup&showContent=false&showDiff=false</value> <description/> <ovrd>N</ovrd> </parameter> </parameters> <portletPreferences/> </channel-definition>
Webproxy
<channel-definition script="classpath://org/jasig/portal/io/import-channel_v3-1.crn"> <title>Nouvelle</title> <name>Nouvelle</name> <fname>nouvelle</fname> <desc>Nouvel ENT</desc> <type>Web Proxy</type> <class>org.jasig.portal.channels.webproxy.CWebProxy</class> <timeout>30000</timeout> <hasedit>N</hasedit> <hashelp>N</hashelp> <hasabout>N</hasabout> <secure>N</secure> <locale>en_US</locale> <categories> <category>Informations</category> </categories> <groups> <group>Tous</group> </groups> <parameters> <parameter> <name>cw_xml</name> <value>http://URL/PAGE.html</value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>upc_localConnContext</name> <value></value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>cw_cacheMode</name> <value>all</value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>cw_cacheTimeout</name> <value>86400</value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>cw_edit</name> <value></value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>cw_help</name> <value></value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>cw_person</name> <value></value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>cw_personAllow</name> <value></value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>cw_cacheDefaultMode</name> <value>all</value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>cw_tidy</name> <value>on</value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>cw_cacheDefaultTimeout</name> <value>86400</value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>cw_passThrough</name> <value>none</value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>cw_info</name> <value>none</value> <description/> <ovrd>N</ovrd> </parameter> <parameter> <name>cw_ssl</name> <value>XHTML.ssl</value> <description/> <ovrd>N</ovrd> </parameter> </parameters> </channel-definition>