Informations de profil des clients (CC/PP) dans les portlets

Le portail propose une API standard appelée "CC/PP" pour accéder aux profils des clients ; découvrez comment accédez au profil client via un attribut de requête. Découvrez les attributs et les composants qui sont pris en charge par l'implémentation de profil par défaut dans le portail.

Pour chaque requête entrante, le portail tente de déterminer le client qui a émis la requête. Il est important de déterminer le client afin de connaître ses fonctions et de répondre correctement. La base de données du portail contient un référentiel des profils des clients qui fournit toutes les informations pertinentes concernant les clients pris en charge. Le portail utilise JSR 188, qui fournit une API standard appelée "CC/PP" pour accéder aux profils des clients.

Java Portlet Specification permet aux portlets d'accéder au profil client via un attribut de demande. Voir l'extrait de code suivant pour savoir comment obtenir un profil dans un portlet et accéder à un attribut de profil.

Figure 1. Accès à un attribut du profil client

import javax.ccpp.Attribute;
import javax.ccpp.Profile;
.........
        
Profile clientProfile = 
    (Profile) portletRequest.getAttribute(PortletRequest.CCPP_PROFILE);
String vendor = null;
if (clientProfile != null) {
    		Attribute attribute = clientProfile.getAttribute("Vendor");
    		if (attribute != null) {
        		vendor =  attribute.toString();
    		}
}

Les attributs et les composants suivants sont pris en charge par l'implémentation de profil par défaut dans le portail. Les attributs propriétaires pris en charge par l'implémentation de portail par défaut, mais ne faisant pas partie du dictionnaire UAPROF, sont tous collectés dans le composant ProcessingInstructions.

Le tableau suivant répertorie tous les attributs requis pour que HCL DX fonctionne correctement.

Tableau 1. Tous les attributs requis pour que HCL DX fonctionne correctement.
Nom Composant Type Description Exemple de valeur
Fournisseur HardwarePlatform Littéral Nom du fournisseur fabriquant le navigateur ou le périphérique "Netscape"
BrowserName BrowserUA Littéral Nom de l'agent utilisateur du navigateur associé à la requête courante "Navigator"
BrowserVersion BrowserUA Littéral Version du navigateur "6.x"
MarkupName ProcessingInstructions Littéral Marquage accepté par le navigateur ou le périphérique "html"
MarkupVersion ProcessingInstructions Littéral Version du marquage "ns6"
CcppAccept SoftwarePlatform Littéral Liste des types de contenu pris en charge par le périphérique "text/html"
HtmlVersion BrowserUA Littéral Version du langage HTML (Hyper Text Markup Language) pris en charge par le navigateur "4.0"
HtmlCSS BrowserUA Booléen Indique si des feuilles de style en cascade peuvent être utilisées avec ce navigateur
FramesCapable BrowserUA Booléen Indique si le navigateur est capable d'afficher des cadres
IFramesCapable BrowserUA Booléen Indique si le navigateur est capable d'afficher des cadres en ligne
JavaAppletEnabled BrowserUA Booléen Indique si le navigateur prend en charge les applets Java
JavaScriptEnabled BrowserUA Booléen Indique si le navigateur prend en charge JavaScript
TablesCapable BrowserUA Booléen Indique si le navigateur est capable d'afficher des tableaux
HtmlNestedTable BrowserUA Booléen Indique si le navigateur est capable d'afficher des tableaux imbriqués
WmlVersion WapCharacteristics Littéral Version WML (Wireless Markup Language) prise en charge par le périphérique "1.1"
WmlTable WapCharacteristics Littéral Indique si le périphérique WML est capable d'afficher des tableaux
FragmentIdentifier ProcessingInstructions Booléen Indique si le navigateur ou le périphérique prend en charge les identificateurs de fragment

Pour plus de détails sur JSR 188, voir sa page de description détaillée sur le site Java Community Process.