|\| | |-| € [)

Category: java (page 2 of 2)

Mon poste sur la création de portlet liferay avec spring en format PDF

En attendant l’exemple, je vous propose mon dernier poste en format PDF et j’en profite pour tester l’attach file module.
liferay-spring

Création d’une portlet avec support du framework Spring pour liferay

Introduction


Nous allons prendre
l’exemple petportal proposé par spring, ajouter les XML
manquants pour qu’il puisse répondre aux exigences de
liferay, puis ajouter notre portlet exemple à l’application.


On suppose que vous
avez déjà téléchargé spring 2.5.1
(version utilisé pour ce tutorial) avec ses dépendances.


Tout au long de ce
document notre application aura comme nom XXXXX


Ajout des fichiers manquants.


Les fichiers
manquants sont :



  • liferay-portlet.xml pour lister
    les différents portlets.


  • liferay-plugin-package.properties
    pour définir les propriétés de notre
    application


  • liferay-display.xml pour
    la disposition de nos portlets dans le menu ‘’add application’’
    de liferay.



Création de la portlet


Définition dans portlet.xml


Chaque portlet doit
être définie dans ce fichier XML en utilisant les
balises suivantes :



  • Portlet-name :
    Identificateur de la portlet qui doit être unique dans
    l’application.


  • Portlet-class : La class
    dispatcher de notre application Spring.


  • Vous pouvez la définir
    vous-même ou faire appel à une classe générique
    proposé par Spring
    (org.springframework.web.portlet.DispatcherPortlet ).


  • Init-param : paramêtre
    pour l’initialisation de notre application. Nous allons juste
    ajouter contextConfigLocation et le faire pointer sur notre nouveau
    fichier.


  • Supports : donner le type
    de la sortie (text/html pour notre cas) et les modes que la portlet
    va assurer ( view pour notre cas )


  • Portlet-info : pour donner
    des informations sur la portlet, ce que nous retiendrons c’est
    title pour définir le titre qui sera affiché pour les
    utilisateurs finaux.



<portlet>


<portlet-name>XXXXX</portlet-name>


<portlet-class>


org.springframework.web.portlet.DispatcherPortlet


</portlet-class>


<init-param>


<name>contextConfigLocation</name>


<value>/WEB-INF/context/portlet-XXXXX.xml</value>


</init-param>


<supports>


<mime-type>text/html</mime-type>


<portlet-mode>view</portlet-mode>


</supports>


<portlet-info>


<title>Recherche
client</title>


</portlet-info>


</portlet>


Définition dans liferay-portlet.xml


Dans ce fichier on
va juste faire une copie de notre ID du fichier précédant
comme suit :


<portlet>


<portlet-name>XXXXX</portlet-name>


</portlet>


Définition dans liferay-display.xml


Il ne reste plus
qu’a ajouter notre portlet dans la catégorie qu’on
voudrait la voir dans le bloc display comme suit :


<category
name="YYYYY">


<portlet
id="XXXXX" />


</category>


Création du fichier context


L’emplacement de
notre fichier a été défini dans portlet.xml,
donc on va le crée sous WEB-INF, context, avec le nom
portlet-XXXXX.xml.


<?xml
version="1.0" encoding="UTF-8" ?>


<!DOCTYPE
beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">


<beans>


<!–
Ici vont se trouver les définitions de nos beans –>


<bean
id="portletModeHandlerMapping"


class="org.springframework.web.portlet.handler.PortletModeHandlerMapping">


<property
name="order" value="20" />


<property
name="portletModeMap">


<map>


<entry
key="view" value-ref="xcontroleur" />


</map>


</property>


</bean>


<bean
id="parameterMappingInterceptor"


class="org.springframework.web.portlet.handler.ParameterMappingInterceptor"
/>


<bean
id="portletModeParameterHandlerMapping"


class="org.springframework.web.portlet.handler.PortletModeParameterHandlerMapping">


<property
name="order" value="10" />


<property
name="interceptors">


<list>


<ref
bean="parameterMappingInterceptor" />


</list>


</property>


<property
name="portletModeParameterMap">


<map>


<entry
key="view">


<map>


<entry
key="xview"


value-ref="xcontroleur"
/>


</map>


</entry>


</map>


</property>


</bean>


<bean
id="xcontroleur"


class="org.tunisiana.controller.XControleur">


</bean>


</beans>




Ce que nous devons
retenir ici c’est la définition de notre contrôleur et
de son emplacement. Mais aussi, la partie View de l’application.






Création du contrôleur


Tout d’abord, il
faut respecter l’emplacement attribué au début.


Un contrôleur
Spring doit hériter de AbstractController qui se trouve sous
org.springframework.web.portlet.mvc.AbstractController.


Un contrôleur
doit définir les méthodes :



  • protected
    void handleActionRequestInternal(ActionRequest request,
    ActionResponse response)


  • protected
    ModelAndView handleRenderRequestInternal(RenderRequest request,
    RenderResponse response)



Remarques


L’appel de ses
deux méthodes se fait successivement d’où si vous
avez besoin de paramètre de formulaire dans la deuxième
méthodes, il faudrait penser à les passer ou les faire
passer toutes en utilisant :



response.setRenderParameters(request.getParameterMap());


Reste


Le reste est
semblable à la création d’application Spring.

Gtalk Translate from english to arabic

I want to present for you a java application on gtalk. I created it using smack API and google translate API. You can use it on adding translate.fr@gmail.com to your contacts.
I wish you will appreciate testing this sample.
You can download source code on : http://code.google.com/p/gmailwikipedia/downloads/list
Looking forward to yours comments and suggestions.

Mise en place de l’environnement de développement liferay sous eclipse

Présentation des logiciels requis :
• JDK. J’utilise la version 6 de Sun.
• ANT. J’utilise la version 1.7
• Eclipse. J’ai téléchargé la version 3.3.1 Java EE à partir du site officiel.
• LIFERAY. J’utilise la version 4.4.1 avec Tomcat 5.
• LIFERAY plugins SDK, disponible sur le site officiel dans Additional files
Remarque : pour le développement SPRING MVC, des bugs ont été fixé dans la version 4.4.2 de liferay.

Installation

JDK
Pour Windows, le jdk est un exécutable qu’il faut lancer mais aussi des variable d’environnement sont nécessaire
$JAVA_HOME = C:\Program Files\Java\jdk1.6.0_02
$JRE_HOME = C:\Program Files\Java\jre1.6.0_02

Qui pointent sur l’emplacement de l’installation, exemple pour ma part.
ANT
Il faut ajouter la variable d’environnement qui
ANT_HOME = C:\apache-ant-1.7.0
Qui Pointe sur l’emplacement de ant et ajouter %ANT_HOME%\bin dans le path.

Eclipse, LIFERAY, LIFERAY SDK
Il suffit de les désarchivés et ils sont près à l’emploi.


Mise en place

Création du projet sur eclipse
File -> new -> Project … -> Java Project
Ensuite next,
Nom du projet : SDK
Create project from existing source
Ensuite Finish

Configuration du SDK
Ouvrir le fichier build.properties et changer la valeur d’app.server.dir par l’emplacement du désarchivage de notre LIFERAY.
app.server.dir=C:/Users/hp/Desktop/liferay/liferay-441

Mise en place de ant
On commence par ajouter la fenêtre de ant
Window -> Show View -> Ant
On deplace build.xml dans Ant
et hop ça fait des chocapic 😀

Création portlet
Sous le repertoire portlets du sdk, il faut lancer la commande
ant -Dportlet.name=newportlet -Dportlet.display.name="My new Portlet" create
Pour la creation d’un sample.

Compilation et archivage de portlet

Ant est l’outil utilisé pour la compilation, le déploiement et l’archivage avec les option clean, compile et war que vous pouvez lancer à partir de eclipse ou de la ligne de commande.

Récupération d’exemples
Plusieurs exemple sont disponible sur la sourceforge et qui peuvent être télécharger avec svn en utilisant la commande :
svn co http://lportal.svn.sourceforge.net/svnroot/lportal/plugins/trunk/portlets lportal

Vos remarques sont les bienvenus pour enrichir ce billet

Newerposts

Copyright © 2017 |\| | |-| € [)

Theme by Anders NorenUp ↑