Bonjour,
j'utilise le portail Liferay pour développer mes applications sont formes de portlets. Le principe de mes portlets est relativement simple :
1- appel du service (pas un service web mais tout comme) par défautt via un client HTTP. Le service est défini dans les préférences.
2- récupération et affichage du flux html retourné (Le flux peut contenir des liens hypertextes)
3- Clic sur un lien hypertexte
4- appel du service correpondant au lien -> cf. point 2
J'ai réussi à mettre en place ce mécanisme via des liens hypertextes de la forme :
Lorsque l'utilisateur clique sur ce lien, la méthode processAction du portlet est appelé. Dans cette méthode je définit une propriété de classe avec la valeur reçu en paramètre. Ensuite la méthode doView est automatiquement appelée. Dans cette méthode j'exécute ma requête sous la form d'une URL via le client HTTP et je reçoit un flux HTML en réponse.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <a href="<portlet:actionURL><portlet:param name="service" value="servicename?param=value" /></portlet:actionURL>">cliquez ici</a>
Comment mettre en place ce mécanisme sans rafraichir la page ?
Je me doute évident qu'il faut que j'utilise de l'ajax mais par contre je ne sais pas du coup de quelle manière je dois implémenter cette architecture.
Quel composant récupère la requête ainsi envoyée : une servlet ou le portlet ? j'ai lu sur le site de sun (http://developers.sun.com/portalserv...-portlets.html) qu'il fallait utiliser une servelt pour effectuer les traitements Ajax. Qu'en pensez-vous ?
Quelle méthode du composant (portlet ou servlet) va recevoir la requête htpp avec le paramètre ?
Merci d'avance pour vos réponses,
Erwan
Partager