JSP et Servlet

JSP et Servlet - Java - Programmation

Marsh Posté le 27-01-2006 à 09:46:59    

Bonjour,
 
Je suis allé faire un tour sous google/wikipedia mais je n'ai pas trouvé de réponse vraiment satisfaisante à ma question.
Je cherchais la différence entre JSP et Servlet, j'ai donc vu que :
 
JSP était une norme d'implantation de Java dans de l'html
Les Servlet était du Java pour le Web
 
Mais j'ai aussi vu sur Wikipedia que :
"Les JSP sont compilées par un compilateur JSP pour devenir des servlets Java. Un compilateur JSP peut générer un servlet Java en code source Java qui peut à son tour être compilé par le compilateur Java, ou peut générer le pseudo-code Java interprétable directement. Dans les deux cas, il est bon de comprendre comment le compilateur JSP transforme la page en servlet Java."
 
J'ai donc deux questions :
 
1*/ Puis je construire mes pages avec JSP et les compiler en Servlet (puis n'utiliser que ces servlet), c'est à dire : développer en JSP et compiler en servlet, est ce que ca revient au même que de développer directement les servlets ? (et donc à ce moment pourquoi développer directement des Servlets ? ne peut on pas tout faire avec des JSP ?)
 
2*/ Je vais développer sur une platforme embarquée composée de plusieurs bundles, dont un qui est défini comme suit :
 
"A library bundle that supplies javax.servlet, javax.servlet.http, and javax.servlet.jsp packages."
 
Cela signifie-t-il d'après vous que je peux développer en Servlet et JSP ou bien je necessite une surcouche ? (-> Tomcat mais qui ne sera pas installable sur la platforme).
 
 
Merci !
 
 
 

Reply

Marsh Posté le 27-01-2006 à 09:46:59   

Reply

Marsh Posté le 27-01-2006 à 10:07:56    

Quand tu crées une page jsp dans une appli web, les étapes de transformation en  servlet et compilation sont implicitement exécutés par le serveur d'appli, dc ces étapes tu t'en tapes.
Une servlet standard et une jsp ne vise pas le même usage. La jsp c'est ta vue dans un modèle MVC, c'est à dire que cette page contiendra essentiellement du HTML, des taglibs, du jstl et peu (voir pas) de code Java. Par contre la Servlet permet d'embarque tout le code lié au controle de formulaire et de récupération d'info dans une base de données par exemple. En clair ta couche métier est gérer à partir de tes servlet qui prépare les informations et les passe à ta jsp qui est chargé de faire l'affichage de la réponse au client.
C'est de la vulgarisation mais c'est une partie de la stratégie d'utilisation des jsp/servlet.

Reply

Marsh Posté le 27-01-2006 à 10:23:16    

Ok ok, ca j'avais bien compris mais :
 
Je ne sais pas si le serveur web ou je m'implanterai gère les JSP (les servlets oui, mais les JSP).
Ma question est donc : puis développer-je avec des JSPs (+ Servlets) et les transformer en Servlets avant de tout mettre sur le serveur ?

Reply

Marsh Posté le 27-01-2006 à 10:42:50    

1) Non, tu ne peux pas car en fait, les Jsp sont comiplée en une classe qui hérite de Servlet et qui est dépendante du serveur d'appli.
Les Jsp sont des servlets spécialisées dont le résultat est de type texte contrairement aux les servlets classiques qui peuvent renvoyer du binaire.
 
En général, on n'utilse les jsp que pour la présentation et on fait les gros traitement dans des Servlet.
 
2) A mon avis si ton serveur d'appli support les servlet, il supporte aussi les JSP

Reply

Marsh Posté le 27-01-2006 à 11:02:24    

Bidem a écrit :

1) Non, tu ne peux pas car en fait, les Jsp sont comiplée en une classe qui hérite de Servlet et qui est dépendante du serveur d'appli.
Les Jsp sont des servlets spécialisées dont le résultat est de type texte contrairement aux les servlets classiques qui peuvent renvoyer du binaire.
 
En général, on n'utilse les jsp que pour la présentation et on fait les gros traitement dans des Servlet.
 
2) A mon avis si ton serveur d'appli support les servlet, il supporte aussi les JSP


 
 
1) Ok merci, ca répond à ma première question
 
2) Ca, je n'en sais rien. Si quelqu'un se sent d'attaque, il peut toujours aller faire un tour sur http://oscar-osgi.sourceforge.net/#bundles et regarder plus précisement (je pense) les bundles :
 
HTTP Service ( http://oscar-osgi.sourceforge.net/repo/http/ )
Servlet ( http://oscar-osgi.sourceforge.net/repo/servlet/ )
 
Moi, en lisant ca (mais je n'ai pas de grandes connaissances sur le sujet) je ne vois pas qui gère la compilation à la volée des JSP. :-/

Reply

Marsh Posté le 27-01-2006 à 11:18:24    

D'après ce que j'ai lu, c'est pour une plateforme fournissant des services web donc il n'y a pas de pages de présentation donc il ny a pas besoin de jsp.
 
Jsp = Java Server Pages
De la même façon que "Pas de bras, pas de chocolat", on peur dire "Pas de page, pas de jsp"

Reply

Marsh Posté le 27-01-2006 à 11:38:24    

:non:  
 
Je developpe sur cette platforme.
Je vais developper un programme qui tournera sur cette platforme.
Le but est d'accèder à cette platforme par n'importe quelle navigateur web et de pouvoir visualiser certaines infos fournies par le programme (et de pouvoir modifier certaines choses).
La platforme fonctionne avec des bundle Java (.jar).
En fait, c'est ce type de platforme qu'utilise Eclipse me semble-t-il ( http://www.aqute.biz/eclipse.html )
Un bundle vient donc se greffer sur la platforme.
 
Or, mon programme (bundle) étant écrit en Java, quoi de mieux que des Servlets/JSP pour faire le lien ?
 
Le problème reste donc entier.

Reply

Marsh Posté le 02-02-2006 à 14:07:44    

up

Reply

Marsh Posté le 02-02-2006 à 15:23:10    

Apparemment HTTP Service utilise Jetty comme conteneur de servlet uniquement (sans les Jsp)

Reply

Marsh Posté le 02-02-2006 à 21:09:11    

Ok merci pour l'info !  :hello:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed