5. Utilisation des classes Java CGI

Contenu de cette section

Trois classes principales sont pour l'instant supportées : CGI , Email et HTML . Je pense y ajouter des classes capables de gérer des entrées et des sorties formatées en MIME (respectivement MIMEin & MIMEout).

Quelques classes de test et de support sont également disponibles : CGI_Test , Email_Test et HTML_Test doivent permettre de tester votre installation. Elles peuvent aussi servir de point de départ à vos propres programmes Java basés sur cette bibliothèque de classes. La classe Text est une superclasse des classes Email et HTML.

5.1 CGI

Syntaxe

public class CGI

Description

La classe CGI détient les "informations SGI" : les valeurs d'environnement initialisées par le serveur Web ainsi que le nom et la valeur issus du formulaire quand l'action submit est sélectionnée. Toutes les informations sont stockées dans un objet de classe Properties.

Cette classe se trouve dans le package "Orbits.net".

Liste des membres


       CGI()         //  Constructeur.
       getNames()    //  Recupere la liste de noms.
       getValue()    //  Recupere la valeur a partir du nom.
      

Voir aussi

CGI_Test.

CGI()

Finalité

Construit un objet contenant les données CGI disponibles.

Syntaxe

public CGI()

Description

Lorsqu'un objet CGI est construit, toutes les informations CGI disponibles sont récupérées et stockées dans le nouvel objet.

getNames()

Finalité

Dresse la liste des noms définis par le formulaire.

Syntaxe

public Enumeration getNames ()

Description

Fournit la liste complète des noms pour lesquels des valeurs correspondantes ont été définies.

Retourne

Une Enumeration de tous les noms définis.

getValue()

Finalité

Récupère la valeur associée au nom spécifié.

Syntaxe

public String getValue ( String nom )

Description

Cette méthode fournit la correspondance entre les noms et les valeurs envoyées depuis un formulaire HTML.

Paramètre

nom

La clé par laquelle les valeurs sont choisies.

Retourne

Une String contenant la valeur.

5.2 CGI_Test

Cette classe fournit à la fois un exemple d'utilisation de la classe CGI, et un programme de test, qu'on pourra utiliser pour confirmer que le package Java CGI fonctionne correctement.

Liste des membres


       main()      //   main() du programme
      

Voir aussi

CGI.

main()

Finalité

Fournit une méthode main().

Syntaxe

public static void main( String argv[] )

Description

Il s'agit du point d'entrée d'un programme CGI qui ne fait rien à part retourner la liste des couples nom/valeur.

Paramètre

argv

Arguments passés au programme par le script java.cgi. Non utilisé pour l'instant.

5.3 Email

Syntaxe

public class Email extends Text

Description

Les messages sont construits au moyen des méthodes add*() de la classe Text et les méthodes spécifiques au courrier électronique fournies par cette classe. Une fois composé, le message est envoyé vers sa destination finale.

Cette classe se trouve dans le package "Orbits.net".

Liste des membres


       Email()      //  Constructeur
       send()       //  Envoie le message e-mail
       sendTo()     //  Ajoute une destination au message
       subject()    //  Initialise le champ Subject: du message
      

Voir aussi

Email_Test, Text.

Email()

Finalité

Construit un objet qui contiendra un message électronique.

Syntaxe

public Email()

Description

Crée un message vide qui sera rempli par les méthodes Email.

Voir aussi

Text.

send()

Finalité

Envoie le message e-mail.

Syntaxe

public void send ()

Description

Formatage et envoi du message. Si aucune adresse de destination n'a été précisée, ne fait rien.

sendTo()

Finalité

Ajoute une destination pour ce message.

Syntaxe

public String sendTo ( String adresse )

Description

Ajoute adresse à la liste des destinations pour cette méthode. Il n'existe pas de limite a priori pour le nombre de destinations d'un message e-mail. Je suis sûr qu'avec une liste assez grande, on peut dépasser la taille acceptable pour le Mail Transport Agent, voire la mémoire disponible sur votre système.

Paramètre

adresse

Une destination à laquelle envoyer ce message.

subject()

Finalité

Initialise le sujet du message.

Syntaxe

public void subject ( String sujet )

Description

Cette méthode remplit le champ Subject: du message. Si elle est appelée plusieurs fois, le sujet utilisé sera le dernier demandé.

Paramètre

sujet

Le texte du champ Subject: du message.

5.4 Email_Test

Cette classe fournit à la fois un exemple d'utilisation de la classe Email et un programme de test qu'on pourra utiliser pour s'assurer que le package Java CGI fonctionne correctement.

Liste des membres


       main()      //  main() du programme
      

Voir aussi

Email.

main()

Finalité

Fournit une méthode main().

Syntaxe

public static void main( String argv[] )

Description

Il s'agit du point d'entrée d'un programme CGI qui retourne une liste des couples nom/valeur disponibles. Cette liste sera également envoyée à l'adresse spécifiée dans la variable Email.

Paramètre

argv

Arguments passés au programme par le script java.cgi. Non utilisé pour l'instant.

5.5 HTML

Syntaxe

public class HTML extends Text

Description

Les messages sont créés à l'aide des méthodes add*() de la classe Text et des méthodes spécifique au HTML ajoutées par cette classe. Une fois terminé, le message est envoyé.

Aucun test n'est effectué pour l'instant pour s'asurer que les méthodes de construction de liste sont utilisées dans le bon ordre. C'est donc au programmeur de faire attention à ne pas violer la syntaxe HTML.

Cette classe se trouve dans le package "Orbits.net".

Liste des membres


       HTML()                  //  Constructeur.
       author()                //  Initialise le nom de l'auteur du document.
       definitionList()        //  Cree une liste de definitions.
       definitionListTerm()    //  Ajoute un terme a la liste de definitions.
       endList()               //  Termine une liste.
       listItem()              //  Ajoute une entree a une liste.
       send()                  //  Envoie le message HTML.
       title()                 //  Initialise le titre du document.
      

Voir aussi

HTML_Test, Text.

HTML()

Finalité

Construit un objet qui contiendra un message HTML.

Syntaxe

public HTML()

Description

Crée un message vide qui sera rempli par les méthodes HTML.

Voir aussi

Text.

author()

Finalité

Initialise le nom de l'auteur du document.

Syntaxe

public void author ( String auteur )

Description

Donne au document un nom d'auteur ayant pour valeur author.

Paramètre

auteur

Texte à utiliser en tant que nom d'auteur du message.

Voir aussi

title().

definitionList()

Finalité

Crée une liste de définitions.

Syntaxe

public void definitionList ()

Description

Initialise une liste de définition. Une liste de définitions est une liste spécialisée telle que chaque entrée de la liste soit un terme suivi du texte correspondant à la définition de ce terme. La création d'une liste de définitions doit être suivie par celle d'au moins un couple terme/texte, et d'un appel à la méthode endList(). Notons que, pour le moment, les listes ne peuvent pas être imbriquées.

Voir aussi

definitionListTerm(), endList(), listItem().

definitionListTerm()

Finalité

Ajoute un terme à la liste de définitions.

Syntaxe

public void definitionListTerm ()

Description

Ajoute un terme à la liste de définitions. Le texte définissant le partie terme de l'entrée courante de la liste devra être inséré dans le message après l'appel de cette méthode, et avant qu'une méthode listItem correspondante soit appelée.

Voir aussi

definitionList(), listItem().

endList()

Finalité

Termine une liste.

Syntaxe

public void endList ()

Description

Cette méthode permet de clore une liste. Notons que, pour le moment, les listes ne peuvent pas être imbriquées.

Voir aussi

definitionList().

listItem()

Finalité

Ajoute une entrée à une liste.

Syntaxe

public void listItem ()

public void listItem ( String article )

public boolean listItem ( String terme, String article )

Description

Ajoute une entrée à une liste. Si la première forme est utilisée, le texte de l'article de liste courant devra être ajouté au message après l'appel de cette méthode, et avant tout autre appel à des méthodes de liste. Dans la deuxième et troisième forme, le texte article est passé comme paramètre à la méthode, au lieu (ou en plus) d'être ajouté au message. La troisième forme est spécifique aux listes de définitions et fournit à la fois le terme et la définition de l'entrée de liste.

Paramètres

article

Le texte de cette entrée de liste de définitions.

terme

Le texte de la partie terme de cette entrée de liste de définitions.

Voir aussi

definitionList(), definitionListTerm(), endList().

send()

Finalité

Envoie le message HTML.

Syntaxe

public void send ()

Description

Envoie le message HTML.

title()

Finalité

Donne une valeur au titre du document.

Syntaxe

public void title ( String titre )

Description

Initialise le texte du titre du document.

Paramètre

titre

Le texte du titre de ce message.

Voir aussi

author().

5.6 HTML_Test

Cette classe offre à la fois un exemple d'utilisation de la classe HTML et un programme de test qui peu servir à s'assurer que le package Java CGI fonctionne correctement.

Liste des membres


       main()      //  main() du programme.
      

Voir aussi

HTML.

main()

Finalité

Fournit une méthode main().

Syntaxe

public static void main( String argv[] )

Description

Il s'agit du point d'entrée pour un programme CGI qui retourne une liste des couples nom/valeur d'un document HTML, chaque couple étant un élément d'une liste de définitions.

Paramètre

argv

Arguments passés au programme par le script java.cgi Non utilisé pour l'instant.

5.7 Text

Syntaxe

public abstract class Text

Description

Cette classe est la superclasse des classes Email et HTML. Les messages sont construits à l'aide des méthodes de cette classe, puis complétés et formatés grâce aux méthodes des sous-classes.

Cette classe se trouve dans le package "Orbits.text".

Liste des membres


       Text()            //  Constructeur.
       add()             //  Ajoute du texte a cet objet.
       addLineBreak()    //  Ajoute une rupture de ligne.
       addParagraph()    //  Ajoute une rupture de paragraphe.
      

Voir aussi

Email, HTML.

add()

Finalité

Ajoute du texte à cet article

Syntaxe

public void add ( char ajout )

public void add ( String ajout )

public void add ( StringBuffer ajout )

Description

Ajoute le texte ajout à la suite du contenu de cet article.

Paramètre

ajout

Texte à ajouter.

Voir aussi

addLineBreak(), addParagraph().

addLineBreak()

Finalité

Force une rupture de ligne à cet endroit dans le texte.

Syntaxe

public void addLineBreak ()

Description

Insère une rupture de ligne dans le texte, à l'endroit du point courant.

Voir aussi

add(), addParagraph().

addParagraph()

Finalité

Débute un nouveau paragraphe.

Syntaxe

public void add ()

Description

Débute un nouveau paragraphe à ce point du flot textuel.

Voir aussi

add(), addLineBreak().


Chapitre suivant, Chapitre Précédent

Table des matières de ce chapitre, Table des matières générale

Début du document, Début de ce chapitre