| > Développement - ASP | SOURCE : http://www.microsoft.com/france/ |
[ RETOUR ]
Les composants ActiveX sont les clés de la réalisation de puissantes applications Web. Les composants fournissent des objets que vous utilisez dans vos scripts pour accomplir des tâches. ASP fournit également des objets incorporés que vous pouvez utiliser dans vos scripts. Cette rubrique explique comment utiliser les objets fournis par un composant ainsi que les objets incorporés fournis directement par Active Server Pages.
Un composant ActiveX est un fichier contenant du code, chargé d'effectuer une tâche ou une série de tâches. Les composants effectuent les tâches courantes afin de vous éviter d'avoir à créer votre propre code pour effectuer ces tâches. Ainsi, un composant indice boursier peut afficher les cotations boursières les plus récentes sur une page Web. ASP est fourni avec des composants de base, comme le composant Database Access, utilisables immédiatement. Vous pouvez obtenir des composants supplémentaires de la part de développeurs indépendants, ou écrire vous-même vos composants.
Les composants servent de blocs de construction de base pour vos scripts ou vos applications Web. Même si vous êtes un débutant en la matière, vous pouvez écrire des scripts en utilisant des composants dont vous ignorez totalement le fonctionnement. Il vous suffit simplement de savoir comment accéder aux objets fournis par les composants. Les composants vous permettent d'écrire des scripts solides, sans avoir à apprendre de langage de programmation.
Si vous êtes un développeur d'applications Web, vous pouvez écrire des composants chargés d'encapsuler une logique commerciale. Ainsi, vous pourriez écrire un composant qui calcule la TVA sur la vente d'un produit. Vous pourriez ensuite appeler le composant à partir d'un script qui traite un bon de commande. Le fait d'isoler le calcul de la TVA du processus de la commande vous permettra de mettre à jour le composant en cas d'un changement de taux, sans rien modifier dans le reste du processus. Vous pouvez écrire des composants dans n'importe quel langage de programmation prenant en charge le modèle d'objet composant (COM), comme le langage C, C++, Java ou Visual Basic. Si la programmation COM vous est familière, les composants ActiveX sont des serveurs d'automation. Pour être exécutés sur le serveur Web, vos composants ActiveX ne peuvent comporter d'éléments à interface utilisateur graphique, comme la fonction MsgBox de Visual Basic.
Les composants sont réutilisables. Une fois que vous avez installé un composant sur votre serveur Web, vous pouvez l'appeler à partir d'un script ASP, une application ISAPI, un autre composant du serveur ou tout programme écrit dans un langage compatible avec COM.
Un composant représente du code exécutable contenu dans une bibliothèque de liens dynamiques (.dll) ou un fichier exécutable (.exe). Un composant fournit un ou plusieurs objets, ainsi que leurs méthodes et leurs propriétés. Pour utiliser un objet fourni par un composant, vous devez créer une instance d'objet, à laquelle vous affectez un nom de variable. Utilisez la méthode ASP Server.CreateObject pour créer l'instance d'objet. Utilisez l'instruction d'affectation de variable propre à votre langage de script afin de nommer l'instance d'objet. Lorsque vous créez l'instance d'objet, vous devez indiquer son nom enregistré (PROGID). Pour les composants de base fournis avec ASP, vous trouverez l'attribut PROGID des objets correspondants, dans les pages de référence.
Ainsi, le composant Ad Rotator pour ASP fait défiler de façon aléatoire une série d'images publicitaires. Le composant Ad Rotator fournit un objet, appelé objet Ad Rotator, dont l'attribut PROGID est « MSWC.AdRotator ». Pour créer une instance de l'objet Ad Rotator, utilisez une des instructions suivantes :
VBScript :
<% Set MyAds = Server.CreateObject("MSWC.AdRotator") %>
JScript :
<% var MyAds = Server.CreateObject("MSWC.AdRotator") %>
Si vous connaissez déjà suffisamment VBScript ou JScript, notez que vous ne devez pas utiliser la fonction du langage de script pour créer une nouvelle instance d'objet (CreateObject dans VBScript ou New dans JScript). Vous devez utiliser la méthode ASP Server.CreateObject , sinon ASP ne pourra suivre l'utilisation de l'objet dans vos scripts.
Vous pouvez également utiliser la balise HTML <OBJECT> pour créer une instance d'objet. Vous devez spécifier l'attribut RUNAT, en lui donnant la valeur Server, ainsi que l'attribut ID qui doit correspondre au nom de la variable utilisée dans vos scripts. Vous pouvez identifier l'objet en utilisant soit son nom enregistré (PROGID) soit son numéro d'enregistrement (CLSID). L'exemple suivant utilise le nom enregistré (PROGID) pour créer une instance de l'objet Ad Rotator :
<OBJECT RUNAT=Server ID=MyAd PROGID="MSWC.AdRotator"></OBJECT>
L'exemple suivant utilise le numéro d'enregistrement (CLSID) pour créer une instance de l'objet Ad Rotator :
<OBJECT RUNAT=Server ID=MyAd CLASSID="Clsid:1621F7C0-60AC-11CF-9427-444553540000"></OBJECT>
Un composant ActiveX écrit en Java peut être fourni sous forme de classe Java au lieu d'une DLL. Pour utiliser Server.CreateObject afin de créer une instance d'objet à partir de la classe Java, vous devez utiliser le programme Javareg dans le but d'enregistrer la classe en tant que modèle COM. Vous pouvez alors utiliser Server.CreateObject avec PROGID ou CLSID.
Si l'instance d'objet n'a pas besoin d'accéder aux objets ASP incorporés ni de participer à une transaction, vous pouvez utiliser un mécanisme plus simple fourni par les noms Java pour appeler directement la classe Java. Vous devez utiliser la version 2.0 de la Machine virtuelle (VM) Java de Microsoft (fournie avec cette version de Internet Information Server et de Serveur Web personnel) pour pouvoir utiliser les noms Java.
Pour créer une instance d'objet en utilisant les noms, utilisez
l'instruction GetObject de VBScript ou de JScript et
indiquez le nom complet de la classe Java sous la forme java:classname.
L'exemple suivant en VBScript crée une instance de l'objet Java Date.
<%
Dim date
Set date = GetObject("java:java.util.Date")
%>
<p> La date est <%= date.toString() %>
Les objets créés en appelant GetObject au lieu de Server.CreateObject ne peuvent accéder aux objets ASP incorporés et ne peuvent participer à une transaction.
ASP fournit des objets incorporés qui exécutent des tâches. Ainsi, l'objet Request stocke les données transmises vers le serveur depuis un formulaire HTML. Contrairement aux objets fournis par un composant ActiveX, vous n'avez pas besoin de créer une instance d'objet ASP incorporé pour l'utiliser dans vos scripts. Vous accédez aux méthodes et aux propriétés d'un objet incorporé de la même façon que vous accédez aux méthodes et aux propriétés des objets d'un composant, comme le décrit cette rubrique.
Une méthode est une action que vous pouvez effectuer sur un objet ou avec un objet. La syntaxe d'appel d'une méthode est généralement :
Object.Method parameters
Les paramètres varient en fonction de la méthode.
Vous pouvez utiliser, par exemple, la méthode Write de l'objet incorporé Response pour envoyer des informations au navigateur, comme le montre l'instruction suivante :
<% Response.Write "Bonjour le monde" %>
Remarque Certains langages de script ne gèrent pas la syntaxe Object.Method. Si c'est le cas pour votre langage, vous devez ajouter une entrée au registre afin d'utiliser le langage en question comme langage de script principal.
Une propriété est un attribut qui décrit l'objet. Les propriétés définissent les caractéristiques de l'objet, comme son type ou décrivent l'état de l'objet, activé ou désactivé. La syntaxe est généralement :
Object.Property
Vous pouvez lire et définir la valeur d'une propriété. Pour certains objets, vous pouvez également ajouter de nouvelles propriétés.
Prenons l'exemple du composant Ad Rotator qui a une propriété, Border, spécifiant si la publicité est entourée ou non d'une bordure et déterminant éventuellement l'épaisseur de cette bordure. L'expression suivante spécifie qu'il ne faut pas de bordure :
<% MyAds.Border = 0 %>
Pour certaines propriétés, vous pouvez afficher leur valeur en cours grâce à une directive de sortie ASP. Ainsi, la commande suivante renvoie TRUE si le navigateur est toujours connecté au serveur :
<%= Response.IsClientConnected %>
| Objet Application | ||
|
|
||
|
|
|
| Objet ObjectContext | |
|
|
|
|
|
| Objet Request | ||
|
|
||
|
|
|
| Objet Response | ||
|
|
||
|
|
|
| Objet Server | |
|
|
|
|
|
| Objet Session | |||
|
|
|||
|
|
|
|
[ RETOUR ]