Enregistrement des filtres de portlets

Avant d'utiliser un filtre de portlet et de l'affecter à un portlet, vous devez l'enregistrer dans PortletFilterService.

Pourquoi et quand exécuter cette tâche

L'exemple de fragment de code suivant montre la déclaration d'un filtre :
1: # Example:
2: filter.SampleFilter.class = com.example.SampleFilter
3: filter.SampleFilter.configValue = some configuration value
4: filter.SampleFilter.transcodeMarkup.1 = html->wml
5: # methods to be filtered
6: filter.SampleFilter.method.1 = service
7: filter.SampleFilter.method.2 = doTitle

Dans cet exemple, le filtre de portlet SampleFilter est défini comme suit :

  • La ligne 2 définit le nom de filtre sur SampleFilter.  Ce nom est ensuite utilisé dans les paramètres du portlet pour associer le filtre au portlet. La ligne 2 définit également la classe mettant en oeuvre l'interface de filtre.
  • La ligne 3 est un paramètre spécifique au filtre fourni au filtre au cours de l'initialisation. Le nom du filtre est ensuite supprimé du nom de paramètre. Par exemple, le paramètre défini à la ligne 4 est identifié ultérieurement par le filtre sous le nom configValue et la valeur (valeur de configuration quelconque). Plusieurs paramètres de ce type peuvent exister.
  • La ligne 4 déclare ce filtre comme filtre de transcodage du HTML vers un marquage WML. Plusieurs paramètres de ce type peuvent exister. Si ce filtre est lié à un portlet pouvant afficher du HTML, vous pouvez aussi placer ce portlet sur des pages pour des périphériques WML. Le filtre est appelé pour transcoder l'affichage html en wml dès qu'un périphérique WML se connecte au portail.
  • La ligne 6 indique que le filtre est appelé lors de l'appel de la méthode service du portlet.
  • La ligne 7 indique que le filtre est appelé lors de l'appel de la méthode doTitle du portlet.

Les informations fournies par les lignes 6 et 7 permettent de n'appeler le filtre que pour les méthodes indiquées afin d'améliorer les performances. Les méthodes possibles pour le filtre sont les suivantes : login, beginPage, service, endPage, doTitle, ActionEvent, MessageEvent et WindowEvent. Si vous voulez que le filtre soit appelé pour chaque méthode, vous n'avez pas besoin de définir de méthode dans le fichier des propriétés.