Trucsweb.com

Java

Comment générer des pages html en java

RDFFav

Comment générer des pages html en java - sans JSP avec servlet

Description de JSIP Pour répondre au besoin de génération de page HTML dynamique, j’ai développé ma propre syntaxe d’inclusion dans les pages HTML que j’appelle JSIP pour Java Servlet Include Pages. Le principe de ces JSIP est d’utiliser le tag SERVLET des pages SSI pour indiquer un emplacement à compléter par la Servlet.html conversion java classe sevlet hashtable jsip générer g énération generator dynamique dynamic Christophe Roux franerg
  • · Niveau : AVANCÉ
  • · Compatibilité : IE / Netscape

Description de JSIP

Pour répondre au besoin de génération de page HTML dynamique, j’ai développé ma propre syntaxe d’inclusion dans les pages HTML que j’appelle JSIP pour Java Servlet Include Pages. Le principe de ces JSIP est d’utiliser le tag <SERVLETS> des pages SSI pour indiquer un emplacement à compléter par la Servlet.

En fonctionnement, la Servlet charge la page JSIP en mémoire, l’analyse pour récupérer les noms des tags <SERVLETS> indiqués par l’attribut " CODE ". Puis la Servlet remplace chacun des codes par une portion de page et enfin retourne en résultat la page JSIP ainsi modifiée.

Vous trouverez la classe Page.java nécessaires à l’utilisation de JSIP dans le package " com.jsip ".

 

On peut dire que les pages JSIP ne sont pas liées au code java qui l’utilise. Par ailleurs, les concepts introduits par JSIP sont classiques en Java (Hashtable) et ne nécessite pas d’apprendre un nouveau langage comme les JSP.

Voici un exemple de code HTML pour une page utilisée par la Servlet Bonjour :

<HTML>
<BODY>
<TITLE>Essai d’utilisation de JSIP</TITLE>
<P>
Voici un exemple d’utilisation de la sortie produite par une Servlet.
</P>
<SERVLET CODE=Bonjour>
Ceci montre la puissance de JSIP :
<SERVLET CODE=Aurevoir>
</BODY>
</HTML>

On remarque une balise inhabituelle : la balise <SERVLET>. C’est elle qui indique que l’on veut inclure le contenu produit par une Servlet dans la page Web. Cette balise reconnaît un attribut, CODE, indiquant le nom de l’insert à placer par la Servlet.

 

La servlet Bonjour, appelée lors de l’analyse de la page HTML ci-dessus, pourrait être la suivante :

import javax.servlet.*;
import java.servlet.http.*;
import com.jsip.* ;

public class BonjourMonde extends HttpServlet {
  public void doGet(HttpServletRequest req, HttpServletResponse res)
throws
  ServletException, IOException) {
    PrintWriter out = res.getWriter();
I   Page p = new Page("Bonjour.html") ;
    p.put("Bonjour","<B>Bonjour !</B>");
    p.put("Aurevoir","<B>Au revoir !</B>");
    out.print(p.toString()) ;
  }
}

  • Cette Servlet permet de découpler le code source de la page HTML.
  • On note la compacité du code par rapport à une Servlet autonome produisant le même effet.
  • Les tags <SERVLET> peuvent se répéter avec la même valeur d’attribut CODE ; le même contenu sera alors inséré.
  • Si tous les tags ne sont pas renseignés, ceux-ci seront remplacé par une chaîne de caractères vide.
  • Cette solution élégante est à disposition de tous selon la licence fournie en entête de la classe Page.java.

 

À propos de Christophe Roux

Christophe Roux
Dernière mise à jour :

Commentaires

       Visites : 2443 - Pages vues : 16573
X

Trucsweb.com Connexion

Connexion

X

Trucsweb.com Mot de passe perdu

Connexion

X

Trucsweb.com Conditions générales

Conditions

Responsabilité

La responsabilité des Trucsweb.com ne pourra être engagée en cas de faits indépendants de sa volonté. Les informations mises à disposition sur ce site le sont uniquement à titre purement informatif et ne sauraient constituer en aucun cas un conseil ou une recommandation de quelque nature que ce soit.

Aucun contrôle n'est exercé sur les références et ressources externes, l'utilisateur reconnaît que les Trucsweb.com n'assume aucune responsabilité relative à la mise à disposition de ces ressources, et ne peut être tenue responsable quant à leur contenu.

Droit applicable et juridiction compétente

Les règles en matière de droit, applicables aux contenus et aux transmissions de données sur et autour du site, sont déterminées par la loi canadienne. En cas de litige, n'ayant pu faire l'objet d'un accord à l'amiable, seuls les tribunaux canadien sont compétents.

X

Trucsweb.com Trucsweb

X

Trucsweb.com Glossaire

X

Trucsweb.com Trucsweb

X

Trucsweb.com Trucsweb

Conditions

Aucun message!

Merci.

X
Aucun message!
X

Trucsweb.com Créer un compte

Créer un compte

.
@