Christophe Dumonet a écrit :
Bonjour,
Je développe des templates et j'aurai la question suivante :

- Lorsque je fais une modif sur un template, comment ne pas passer par les étapes :
                        --> je reconstruis l'archive jar de mon template.
                        --> je copie mon archive dans newtemplates.
                        --> et l'auto-deploy se fait tout seul.
           ?

En fait, j'ai aussi la même question pour le developpement des portlets, comment éviter de faire : création archive + redéploiement ?
Le déploiement est-il obligatoire ?

--> Si je redéploie mon archive en version n alors qu'elle est déjà déployée en version n-1, la version n écrase t'elle la n-1 ?

Merci à vous, tout ça me rendrait plus efficace !
Cordialement,

Bonjour,

En ce qui concerne les portlets sous Jahia, je vous conseille de développer des portlets JSR168. Vous trouverez la spécification officielle à cette adresse: http://jcp.org/en/jsr/detail?id=168.

Lorsque vous déployez une portlet, Jahia enregistre la portlet dans la base de données et ajoute quelques informations dans le fichier web.xml.

Exemple:
<web-app>
</web-app>

devient

<web-app>
 *<display-name>Rss Portlet</display-name>
 <servlet>
   <servlet-name>JetspeedContainer</servlet-name>
   <display-name>Jetspeed Container</display-name>
   <description>MVC Servlet for Jetspeed Portlet Applications</description>
<servlet-class>org.apache.jetspeed.container.JetspeedContainerServlet</servlet-class>
   <init-param>
     <param-name>contextName</param-name>
     <param-value>rssportlet</param-value>
   </init-param>
   <load-on-startup>0</load-on-startup>
 </servlet>
 <servlet-mapping>
   <servlet-name>JetspeedContainer</servlet-name>
   <url-pattern>/container/*</url-pattern>
 </servlet-mapping>
 <taglib>
   <taglib-uri>http://java.sun.com/portlet</taglib-uri>
   <taglib-location>/WEB-INF/tld/portlet.tld</taglib-location>
 </taglib>*
</web-app>

Lorsque vous voulez mettre à jour une portlet, vous pouvez soit la redéployer soit écraser les fichiers (jsp,....). Cepedant, il faut faire attention à ce que le fichier web.xml contienne bien les informations ajoutées par Jahia. S'il s'agit d'une mis à jour des classes, je vous conseille de redéployer.

Lorque vous redéployez la portlet, celle ci est stoppée (appel de la méthode destroy() ), undéployée (supprimée du répertoire webapps), déployée et redémarré (appel de la méthode init()).

Enfin un redéploiment ne nécessite pas forcément un redémarrage du serveur.

KT.

Répondre à