Projet Socle ENT
Pages enfant
  • Adaptation des canaux et portlets

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.
Commentaire: Migrated to Confluence 5.3

Connecteur Apogee (esup-connecteur-apogee)

...

Avertissement
titleAttention

Seules les versions à partir de la 1.08 sont compatibles avec esup-3

http://www.esup-portail.org/display/PROJ/esup-connecteur-apogee

...

Ce développement utilisait la classe org.jasig.portal.RDBMServices.PreparedStatement qui n'existe plus dans les version 3 d'uPortal.

Il faut maintenant utiliser : java.sql.PreparedStatement

Pas de format

--- source/org/esupportail/portal/utils/connectors/ApogeeConnector.java       2005-09-26 08:53:40.000000000 +0200
+++ source/org/esupportail/portal/utils/connectors/ApogeeConnector.java        2009-09-22 14:01:35.000000000 +0200
@@ -12,7 +12,7 @@
 import java.util.HashMap;

 import org.jasig.portal.RDBMServices;
-import org.jasig.portal.RDBMServices.PreparedStatement;
+import java.sql.PreparedStatement;
 import org.jasig.portal.security.IPerson;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -148,10 +148,7 @@
                                        con =
                                                RDBMServices.getConnection(
                                                        ApogeeConnectorConfig.getInstance().getPool());
-                                       stmt =
-                                               new RDBMServices.PreparedStatement(
-                                                       con,
-                                                       ApogeeConnectorConfig.getInstance().getSqlMapping());
+                                       stmt = con.prepareStatement(ApogeeConnectorConfig.getInstance().getSqlMapping());
                                        stmt.clearParameters();
                                        stmt.setString(1, personAttributeValue);
                                        rs = stmt.executeQuery();

Connecteur Harpège (esup-connecteur-harpege)

Le changement corrige le même problème que pour le connectuer-apogee :

Connecteur Harpège (esup-connecteur-harpege)

Avertissement
titleAttention

Seules les versions à partir de la 1.01 sont compatibles avec esup-3

http://www.esup-portail.org/display/PROJ/esup-connecteur-harpege

Suivre les instructions #Librairies JAR de uportal. Pour tomcat6, suivre aussi les instructions #Librairies JAR et tomcat 6

Canal Sympa (CSympa)

Avertissement
titleAttention

Seules les versions à partir de la 3.1 sont compatibles avec esup-3

cf http://www.esup-portail.org/display/PROJCANSYMPA

Pour tomcat6, suivre aussi les instructions Librairies JAR et tomcat 6

Canal Stockage (CStockage)

Avertissement
titleAttention

Seules les versions à partir de la 4.7 RC2 sont compatibles avec esup-3

http://www.esup-portail.org/display/PROJCANSTOCK/Canal stockage

Portlet newsPortlet

Pas de format

--- source/org/esupportail/portal/utils/connectors_harpege/HarpegeConnector.java       2007-09-19 08:11:44.000000000 +0200
+++ source/org/esupportail/portal/utils/connectors_harpege/HarpegeConnector.java        2009-09-22 14:05:26.000000000 +0200
@@ -10,7 +10,7 @@
 import java.sql.Connection;
 import java.sql.ResultSet;
 import org.jasig.portal.RDBMServices;
-import org.jasig.portal.RDBMServices.PreparedStatement;
+import java.sql.PreparedStatement;
 import org.jasig.portal.security.IPerson;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -153,10 +153,7 @@
                                        con =
                                                RDBMServices.getConnection(
                                                        HarpegeConnectorConfig.getInstance().getPool());
-                                       stmt =
-                                               new RDBMServices.PreparedStatement(
-                                                       con,
-                                                       HarpegeConnectorConfig.getInstance().getSqlMapping());
+                                       stmt = con.prepareStatement(HarpegeConnectorConfig.getInstance().getSqlMapping());
                                        stmt.clearParameters();
                                        stmt.setString(1, personAttributeValue);
                                        rs = stmt.executeQuery();

Canal Stockage (CStockage)

Dans la version uPortal 3 distribué par esup l'ancien webservice des groupes n'est plus disponible (org.esupportail.portal.webservices.groups.PortalGroups)

Il faut maintenant utilisé org.esupportail.portal.ws.groups.PortalGroups.

A voir avec Yohann org.esupportail.portal.channels.CStockage.userManagement.PortalGroupsManager

...

La portlet news utilise une tagLib DisplayTags.

...

Pas de format
<d:column property="XXXX" titleKey="XXX.XXX.XXX"   href="${baseRenderUrl}" paramId="XX" paramProperty="XX"   />

Seule solution trouvé pour l'instant préfixé manuellement le paramId :

Pas de format
<d:column property="XXXX" titleKey="XXX.XXX.XXX"   href="${baseRenderUrl}" paramId="pltp_XX" paramProperty="XX"   />

Cf : http://sourcesup.cru.fr/frs/download.php/2661/Note_To_uPortal_V3_User.doc

Une nouvelle version du projet nommé esup-news est disponible et compatible portail 3.2 (cf l'incubateur de projet) http://www.esup-portail.org/display//sourcesup.cru.fr/frs/download.php/2661/Note_To_uPortal_V3_User.doc

Librairies JAR

ESUPNEWS/Home

Canal CMonDossierWeb/Harpège

  • Dans ***/custom/uPortal/uportal-impl/src/main/resources/properties/contexts/datasourceContext.xml
    Il faut déclarer des beans pour les pools qu'on rajoute
    Bloc de code
    
    <bean id="Apogee" class="org.springframework.jndi.JndiObjectFactoryBean">
    <property name="jndiName" value="java:comp/env/jdbc/Apogee"/>
    </bean>
    <bean id="Harpege" class="org.springframework.jndi.JndiObjectFactoryBean">
    <property name="jndiName" value="java:comp/env/jdbc/Harpege"/>
    </bean>
    
  • Suivre les instructions #Librairies JAR de uportal. Pour tomcat6, suivre aussi les instructions #Librairies JAR et tomcat 6
  • NB : le canal ConsultHarpege (ancienne doc) est obsolete. Utilisez plutôt esup-agent (qui utilise les webservices Harpege)

Portlet pstage

L'API servlet a changé de répertoire dans tomcat 6 :

uPortal3 utilise une bibliothèque castor 1.1.1 qu'il déploie dans (tomcat.home)/shared/lib. celle-ci est incompatible avec la bibliothèque livrée avec Pstage (castor-1.2-xml.jar) :

Supprimer la biblothèque castor-1.2-xml.jar du répertoire (pstage)/WEB-INF/lib

Suivre aussi les instructions pour les portlets ci-dessous

Adaptations courantes

Librairies JAR de uportal

Plusieurs portlets demandent les librairies lib/*/.jar dans uportal.home, sans vraiment s'en servir. En uportal 3.2, ces librairies ont changé de place.
Une solution simple : supprimer la ligne suivante de build.xml

Bloc de code

<fileset dir="${uportal.home}/lib" includes="**/*.jar" />

Librairies JAR et tomcat 6

Esup dans la version 3 préconise l'utilisation de tomcat 6.

  • Le fichier el-api.jar est maintenant inclus dans tomcat et ne doit pas être dans les portlet (portlet esup-hc)
  • Les librairies JAR de tomcat 6 sont dans lib et non plus dans common/lib. Il faut donc remplacer dans le build.xml de la portlet
    Bloc de code
    
    <fileset dir="${tomcat.home}/common/lib" includes="**/*.jar" />
    
    Par :
    Bloc de code
    
    <fileset dir="${tomcat.home}/lib" includes="**/*.jar" />
    
    Ou alors
    Bloc de code
    
    <property name="lib.tomcat" value="common/lib"/>
    
    Par :
    Bloc de code
    
    <property name="lib.tomcat" value="lib"/>
    

Les portlets

La version de l'implementation pluto a changer la librairie Pluto a changé en uPortal 3 ce qui entraine des modifications du coté des portletPortlets

web.xml

Il faut maintenant spécifier un portlet-name et un load-on-startup dans le web.xml

Pas de format
<servlet>
  <servlet-name>esup-helpdesk</servlet-name>
[...]
  <init-param>
    <param-name>portlet-name</param-name>
    <param-value>esup-helpdesk</param-value>
  </init-param>
  <load-on-startup>1</load-on-startup>
</servlet

Balise WikiLa servlet pluto Pluto doit maintenant être mappé mappée sur /PlutoInvoker/\[portlet\]/\*

Pas de format
<servlet-mapping>
  <servlet-name>esup-helpdesk</servlet-name>
  <url-pattern>/PlutoInvoker/esup-helpdesk/*<helpdesk</url-pattern>
</servlet-mapping>
portlet.xml

Si la portlet est publiée dans uPortal avec le paramètre "disableDynamicTitle" désactivé :

Bloc de code

  <parameter>
      <name>disableDynamicTitle</name>
      <value>true</value>
      <description/>
      <ovrd>N</ovrd>
  </parameter>


...Pluto utilise alors le nom défini dans le fichier Le pluto semble utiliser le nom définit dans le portlet.xml pour afficher son titre dans le portail.

...