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>