Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

...


Dans l'architecture 3 tiers d'Harmony, la couche Présentation est assurée par le client léger Harmony. Deux types de client léger coexistent : le client léger Wpf, qui s'exécute de manière classique sur un poste client équipé du système Windows, et le client léger Web (ou client léger Html) qui s'exécute à partir et dans un navigateur Web.
Ce livre présente les spécificités du client léger Web. Il contient les chapitres :


Remarque :
Le "Client léger Html" et "Harmony Web" sont deux produits totalement distincts, qui utilisent deux technologies différentes et ne doivent pas être confondus. Les documentations d'installation et de paramétrage de ces deux produits font d'ailleurs l'objet de livres totalement séparés.

Ancre
Top_of_Installation_et_parametra
Top_of_Installation_et_parametra

...


Les applications Harmony accessibles depuis un client léger Web s'exécutent sur un ordinateur qui sert à la fois de serveur Web et de serveur d'applications.
Ce premier livre décrit d'abord l'installation et le paramétrage du serveur Web (étoile), avec les chapitres :

(étoile) Le côté serveur d'applications fait l'objet du livre Installation du serveur d'applications. Les explications qui y sont fournies restent valables pour le client léger Html, en dehors des chapitres décrivant l'installation du serveur en mode Socket et en mode Service Web qui s'appliquent uniquement au client léger Wpf. En particulier, il faut installer Harmony Power Foundation et configurer le service DhsDivaAgent sur le serveur.
Au chapitre Gestion des utilisateurs en client léger Web, ce livre décrit ensuite quelques spécificités du client léger Web.

Ancre
Top_of_Installation_automatisee
Top_of_Installation_automatisee

...

Installation d'un nouveau serveur
Les paramètres d'installation proposés sous l'onglet Installation d'un nouveau serveur sont les suivants :

Vérifier et installer si nécessaire le serveur et les composants IIS

Cochez cette case si vous installez votre premier serveur Web. Cette option permet d'installer et configurer le serveur IIS avec tous les composants requis au fonctionnement du client léger Web. Les opérations réalisées sont détaillées à la rubrique Installation manuelle de IIS sur le serveur de clients légers Web. Attention : Cette option n'est pas disponible pour les versions Vista ou 2008 Server du système Windows.

Répertoire de destination Windows

Indiquez ici le chemin d'accès au répertoire pointé par l'application IIS utilisée pour votre serveur de clients légers Web.
Le nom de l'application IIS spécifié plus loin est automatiquement concaténé à ce chemin d'accès. Exemple : Répertoire de destination : c:\divalto\MonChemin Application IIS : MonApplication
==> Répertoire pointé de l'application : c:\divalto\MonCheminMonApplication Il est en effet obligatoire que le répertoire de stockage des fichiers du client léger Web porte le même nom que celui donné à l'application IIS.
Remarque importante : Si vous spécifiez ici le chemin d'accès au répertoire de départ (x:\Divalto\Internet), l'installateur ne procède à aucune copie de fichier. L'application IIS utilisée pour votre serveur pointera directement le répertoire Divalto standard (x:\Divalto\Internet\Lcweb provenant de l'installation du runtime d'Harmony). Après la livraison par Divalto d'une nouvelle version des fichiers inclus dans ce répertoire, aucune mise à jour ne sera nécessaire. On utilisera cette solution (pour sa simplicité) lorsque l'ordinateur héberge un site Web unique.
Dans le cas contraire, l'installateur effectue une copie complète du répertoire standard dans le répertoire spécifié ici. L'application IIS utilisée pour votre serveur pointera le nouveau répertoire. Attention : Après une mise à jour du runtime d'Harmony (i.e. la livraison d'une nouvelle version des fichiers inclus dans le répertoire standard), il faudra impérativement rappeler l'installateur pour effectuer la mise à jour de votre répertoire spécifique (voir le paragraphe "Mise à jour d'un ou plusieurs serveurs" ci-après). On sera amené à utiliser cette solution lorsque l'ordinateur héberge plusieurs sites Web, ce qui peut s'avérer nécessaire par exemple pour que les différents clients disposent de leur propre chemin d'accès si des images spécifiques à chaque client sont affichées par les programmes d'application : voir la rubrique Installation des images sur le serveur de clients légers Web.

Utiliser le site par défaut

Si vous cochez cette case, l'application IIS sera créée dans le site Web par défaut de IIS ("Default Web Site").

Site

Nom du site Web dans IIS, si vous souhaitez créer un site Web spécifique au serveur de clients légers Web (option conseillée qui évite tout conflit avec tout autre serveur Web hébergé sur cet ordinateur). Le fait d'utiliser le site par défaut ou un site spécifique n'a pas d'incidence.

Port

Numéro de port pour ce site (8080 par défaut). Attention en cas d'installation de plusieurs sites : Chaque site doit utiliser un port différent. L'installateur ne vérifie ni la validité du numéro de port ni la présence d'éventuels doublons.

Application IIS

Nom de l'application IIS. Remarque : Les fichiers du client léger Web sont copiés dans le répertoire pointé par l'application et qui porte obligatoirement le même nom que le nom spécifié ici. Certains fichiers sont également patchés pour y intégrer ce nom.


Plusieurs serveurs Web peuvent être installés sur un même ordinateur, sur un ou plusieurs sites distincts (y compris le site par défaut). Un même site peut en effet héberger plusieurs applications IIS.
Des explications complémentaires concernant la configuration de l'application IIS, ainsi que les opérations réalisées par l'installateur sur ce point, sont décrites à la rubrique Création et configuration manuelles d'une application IIS sur le serveur de clients légers Web. Voir aussi la rubrique Compression des trames pour un client léger Web.
Utilisez le bouton "Ouvrir la console IIS" pour visualiser le serveur Web créé par l'installateur.

...

Lorsque IIS est installé, tous les paramétrages qui le concernent s'effectuent par le Gestionnaire des Services Internet (IIS), accessible depuis le panneau de configuration, outils d'administration (voir la rubrique Création et configuration d'une application IIS sur le serveur de clients légers Web). Voir aussi la rubrique Compression des trames pour un client léger Web.

Service IIS
IIS est un service qui peut empêcher de renommer ou déplacer des dossiers si ceux-ci sont pointés par des applications IIS. La solution pour pallier cette difficulté consiste à arrêter momentanément le serveur Web. Pour cela, stoppez le service de Publication World Wide Web depuis le gestionnaire de services (Panneau de configuration : Outils d'administration : Services).

Ancre
Top_of_Creation_d_une_applicatio
Top_of_Creation_d_une_applicatio

Création et configuration manuelles d'une application IIS sur le serveur de clients légers Web


Après l'installation et la configuration de IIS, tous les paramétrages le concernant s'effectuent par le Gestionnaire des Services Internet (IIS), accessible depuis le panneau de configuration, outils d'administration. Le client léger Harmony Web nécessite la création d'une application dans un site Web, attachée à un pool d'applications.
Pool d'applications IIS
Une application IIS appartient toujours à un pool d'applications. Il est possible d'utiliser l'un des pools proposés par défaut mais il est plutôt conseillé de créer un pool d'applications dédié, de manière à ne pas interférer avec d'autres applications Web. Pour créer et configurer un pool d'applications :

...


Mise en oeuvre d'une compression des trames
Voir la rubrique Compression des trames pour un client léger Web.
Installation de plusieurs serveurs de clients légers Web sur un même ordinateur
Un même ordinateur serveur peut héberger plusieurs sites Web, par exemple en mode ASP si l'on souhaite que chaque client dispose de son propre chemin d'accès physique (étoile). Pour ce faire :

...

Pour effectuer cette copie, utilisez le programme d'installation xLcwebInstall.dhop (à lancer à partir du menu Harmony Paramétrage : Installation serveur client léger Web).

...

(étoile) On aura par exemple besoin que les différents clients disposent de leur propre chemin d'accès si des images spécifiques à chaque client sont affichées par les programmes d'application : voir la rubrique Installation des images sur le serveur de clients légers Web.

Paramétrages complémentaires

  • Pour des raisons de sécurité, Windows interdit par défaut la saisie par l'utilisateur des caractères "<" et ">" (car ces caractères servent de délimiteurs dans un source HTML). Pour pallier cet inconvénient et éviter un arrêt brutal du programme, le fichier default.aspx livré en standard contient sur la première ligne (<%@ Page ...) le paramètre validateRequest="false", qui permet de passer outre à cette interdiction. Mais attention, la présence de ce paramètre peut constituer une faille de sécurité : il suffit de le retirer du fichier .aspx pour retrouver le fonctionnement par défaut de Windows.

  • Il est possible de paramétrer un site Web IIS par l'intermédiaire du fichier Web.Config (situé au même niveau que la page ia.aspx). Le paramètre "timeout" de la balise <SessionState> permet de préciser le délai au terme duquel une session inactive est stoppée côté serveur. Lorsque le serveur arrête une session, le programme Diva est automatiquement interrompu. Remarque : Lorsque le poste client est "actif", le client léger Harmony Web envoie régulièrement des messages au serveur pour assurer que ce dernier ne referme pas la session intempestivement (et ce, même si l'utilisateur reste lui totalement inactif sur cette session). Toutefois, ce dialogue peut être interrompu, par exemple si le poste client est mis en veille par l'utilisateur.


Voir aussi : Gestion des utilisateurs en client léger Web.

Ancre
Top_of_Compression_des_trames_po
Top_of_Compression_des_trames_po

...


Pour que le client léger Web ait accès aux fichiers d'aides, il faut configurer le serveur Web de la même manière qu'un serveur d'applications classique fonctionnant en accès distant avec les aides délivrées par un serveur Web (voir le livre Installation des fichiers d'aides).

Ancre
Top_of_Gestion_des_utilisateurs
Top_of_Gestion_des_utilisateurs

...

  • En client léger Web, l'utilisateur doit se connecter en spécifiant son nom d'utilisateur et son mot de passe Windows. Le compte utilisateur "Divalto" est obligatoirement le compte Windows ayant servi à la connexion au serveur de clients légers Web. Il est donc nécessaire de créer des codes d'utilisateur "Divalto" identiques aux codes d'utilisateur Windows.

  • Lors de la connexion, un profil utilisateur est demandé. Il est donc nécessaire de créer des profils utilisateur sur le serveur, en appelant le choix "Gestion des profils utilisateur" de l'interface d'accueil (accessible depuis le piano). On y indiquera le nom et le mot de passe du compte Windows de l'utilisateur, ainsi que son environnement.

...

  • Dans Internet Explorer, il faut activer l'option "Autoriser les fenêtres initiées par des scripts sans contrainte de taille ou de position". Cette option est désactivée par défaut et se trouve dans les options Internet de Sécurité, zone "Sites de confiance" (bouton "Personnaliser le niveau").

Voir aussi : Enregistrement des paramètres de l'utilisateur.

Ancre
Top_of_Connexion_au_serveur_de_c
Top_of_Connexion_au_serveur_de_c

...

Pour lancer un autre programme que l’interface d’accueil ia.aspx, l’url doit être de la forme :

http://nom_du_serveur/nom_du_site_web/default.

...

Cette url aspx?program=nom_du_programme

Exemple : http://localhost:8080/lcweb/default.aspx?program=xconsole.dhop


L'url demandée affiche la page d'identification de l'utilisateur :

L'utilisateur doit indiquer son code utilisateur Windows (étoile) suivi, si nécessaire, du nom du domaine précédé du caractère @ (par exemple : utilisateur1@mondomaine.dmz) puis saisir son mot de passe. De plus :

...


Effacement du Local Storage.
L'utilisateur peut effacer les données enregistrées dans le Local Storage de son navigateur en appelant, depuis ce même navigateur, la page LocalStorageClear.html.
L'accès à cette page se fait par l'url :
Http://nom_du_serveur/nom_du_site_web/LocalStorageClear.html
La signification des différents éléments composant cette url est donnée à la rubrique Connexion au serveur de clients légers Web.

Ancre
Top_of_Restrictions_d_utilisatio
Top_of_Restrictions_d_utilisatio

...


Les clients légers Web et Wpf sont en grande partie iso-fonctionnels, aussi bien en ce qui concerne l'interface utilisateur que le développement d'applications. Toutefois, le client léger Web s'exécute dans un navigateur Web et certaines fonctionnalités, habituellement offertes par le système Windows et accessibles avec Xwpf, ne sont pas mises à disposition sur le Web (en particulier pour des raisons de sécurité). De plus, quelques autres fonctionnalités n'ont pas été implémentées ou sont utilisées différemment dans la version Web du client léger.
Cette rubrique présente les différences majeures entre les deux clients légers.
Les développeurs trouveront le détail des spécificités et des restrictions concernant la programmation des applications Harmony dans la documentation Xwin - Programmation.

  1. Grandes fonctionnalités indisponibles avec un navigateur

  • Interfaces OLE Automation et YOffice. Le publipostage avec un traitement de textes n'est plus disponible. L'export tableur fonctionne, mais uniquement en passant par l'interface OpenXml.

  • Interface CTI.

  • Interface MAPI. L'envoi de fax par MAPI depuis le poste client n'est plus disponible. Les autres fonctions de messagerie peuvent être mises en œuvre sur un site disposant d'un serveur Exchange, grâce aux fonctions d'interface avec Exchange Server. Le protocole standard MAILTO (schéma d'URI permettant de créer un lien hypertexte vers une adresse courriel) peut aussi être utilisé pour l'envoi de mails simplifiés (sans pièce jointe).

  • Drag & drop "Externe" (c'est-à-dire d'une fenêtre de navigateur à une autre).

  • Quasi-totalité des fonctions de gestion de fichiers Windows. Voir le paragraphe "Copie, exécution et gestion de fichiers Windows".

  • Exécution de programmes Windows sur le poste client (fonction LcExec).

  • Fonctions de gestion de la base de registres du client.

  • Fonctions de gestion du presse-papiers. Ces fonctions s'exécutent sur le serveur et ne lisent donc pas le presse-papiers du client Web.

  • Affichage de fenêtre en mode caché et fonction WindowShow. Il est impossible de cacher la fenêtre d'un navigateur Web. Le mode SW_HIDE (WindowShow, ProgramCall, …) ne peut donc pas fonctionner. La fonction WindowShow, qui permet de maximiser, minimiser ou cacher la fenêtre Harmony ne fonctionne pas en client léger Html.

  • La zone de notification (traybar) n'est pas disponible.

  • Formats d'image interdits. Tous les formats d'images ne sont pas reconnus sur le Web. C'est le cas en particulier du format WMF (et attention, ceci concerne aussi les images placées par l'utilisateur dans un texte riche).

  • Touches interceptées par les navigateurs. Certaines touches (dépendant du navigateur) ne sont pas disponibles. Un tableau des touches interdites est donné dans la documentation Xwin - Programmation.

  1. Fonctions non implémentées en Html

Citons en particulier :

  • Les objets graphiques :

  • Hog. Concerne l'objet "Graphique" proprement dit mais aussi l'impossibilité de placer un hog dans un objet "Texte" ou dans un en-tête de colonne de tableau.

  • Graphiques générés par les fonctions du module Ygraph.

  • Les fonctions Diva PlaySound et MessageBeep.

  • L'attribut dynamique AN_BITMAPS_ET_TITRE (objet "Bouton").

  • Le double clic droit.

  • La non prise en compte des images provenant d'un exécutable (fichier .exe ou .dll - hors icones de xrtDiva.exe), ainsi que celle du paramètre "Petite icone" des images de la feuille de styles.

  • La propriété "Prendre la couleur de la colonne 1" de l'objet tableau.

  1. Impressions

Les impressions génèrent des fichiers au format PDF qui sont téléchargés sur le poste client. Sauf si le paramétrage demande une impression sur le serveur (auquel cas, l'état est directement édité sur une imprimante du serveur), une impression génère toujours un fichier .dhvw, immédiatement converti au format PDF. Le fichier PDF est téléchargé par le navigateur Web.
Le client Web ne dispose pas de l'utilitaire DivaltoViewer (ni des commandes "Fermer tous les DivaltoViewer" et "Imprimer et fermer tous les DivaltoViewer"). L'assistant de personnalisation des masques d'impression n'est pas disponible en Html.

L’option ‘aperçu avant impression par défaut’ du menu principal disponible dans le client xWPF n’est pas disponible en client léger Web : l’aperçu avant impression par défaut est toujours à vrai.

  1. Exports vers un tableur

Les exports vers un tableur développés avec l'interface OpenXml (proposés par exemple par les zooms) fonctionnent avec le client léger Web (le fichier au format .xlsx est téléchargé sur le poste client).

  1. Messagerie

L'envoi de mail et la synchronisation avec le gestionnaire de messagerie du poste client (Outlook, …) par l'interface MAPI sont remplacés par des fonctions équivalentes de Microsoft Exchange Server (méthode également disponible avec le client léger Wpf). Bien entendu, ceci ne fonctionne que si le site est équipé d'un serveur Exchange.
En client léger Html, une autre méthode est possible pour l'envoi de mails simplifiés (sans pièce jointe). Elle utilise le protocole standard MAILTO (schéma d'URI permettant de créer un lien hypertexte vers une adresse courriel) et doit être activée dans DivaltoViewer.

  1. Copie, exécution et gestion de fichiers Windows

  • La fonction LCWinDownload (copie d'un fichier du serveur vers le client) télécharge le fichier sur le poste client et déclenche l'exécution de l'application associée (si elle est "connue" du navigateur). Par exemple, l'affichage d'une pièce jointe dans Divalto fonctionne.

  • La fonction LCWinUpload (copie d'un fichier du client vers le serveur) est utilisable dans deux cas précis :

...

  • La fonction WinGetOpenFileName ouvre la boîte de dialogue de sélection des fichiers de Windows (voir fonction LCWinUpload ci-dessus).

  • Les autres fonctions "Windows" soit ne sont pas fonctionnelles (LcWinGetFilesAttributes, LcWinSetFilesattributes, WinGetSaveFileName, WinShBrowseForFolder, …), soit attaquent le serveur (WinDirGetFile, FindExecutable, GetTempPath, WinCreateDirectory, LCWinShGetSpecialFolderLocation, …).

  1. Différences d'interface utilisateur

Ce paragraphe mentionne les différences entre les clients légers Wpf et Html concernant l'interface utilisateur :

...