La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Les techniques de programmation JSP & Servlet dans l’offre AppDevStudio Atelier Technique SAS présenté par Denis MASSON 11 septembre 2001.

Présentations similaires


Présentation au sujet: "Les techniques de programmation JSP & Servlet dans l’offre AppDevStudio Atelier Technique SAS présenté par Denis MASSON 11 septembre 2001."— Transcription de la présentation:

1 Les techniques de programmation JSP & Servlet dans l’offre AppDevStudio Atelier Technique SAS présenté par Denis MASSON 11 septembre 2001

2 Quelles technologies WEB choisir ? Détail de l’offre AppDevStudio ( CGI, Applet JAVA, Servlet & JSP) Présentation des solutions CGI et Applet JAVA Forces et faiblesses des solutions CGI et Applet Bilan sur l’utilisation des Applets Bilan sur la technologie CGI Tableau de comparaison CGI – Applet JAVA La technologie JSP Présentation de la solution Technique de programmation Conseils d’utilisation JSP avec AppDevStudio Présentation de l’outil de développement Création de projets JSP (démonstrations) Réactions - Débat

3 L’offre AppDevStudio permet de mettre en œuvre une technique de programmation CGI à l’aide du module SAS/IntrNet. Cette technologie est la première mise en œuvre par SAS pour le développement de pages Web dynamique. Elle bénéficie régulièrement d’améliorations.

4 La technologie CGI est basée sur la notion de "transaction" et n'intègre pas la notion de "session" (jusqu'à la version 8). Les évènements détectés au niveau des objets du navigateur ne sont pas répercutés automatiquement sur le serveur. Il faut pour cela déclencher une action. Trois éléments sont indispensables à la mise en oeuvre de cette technologie : Les pages HTML stockées sur le serveur WEB qui contiennent les FORMULAIRES. Chacun des champs du formulaire est un paramètre passé à la session SAS. Le fichier : BROKER.EXE. C'est un fichier exécutable (CGI) appelé par le formulaire de la page HTML. Son rôle est de garantir le passage des paramètres du formulaire à la session SAS. La session SAS DISPATCHER. C'est une application qui est en permanence à l'écoute des requêtes provenant du BROKER. Elle est chargée de mettre en forme et de rediriger le résultat des requêtes. Technologie CGI

5

6

7 L’offre AppDevstudio permet de disposer d’un environnement de développement intuitif WEBAF qui dispose d ’assistants à la programmation et d’un package JAVA complet permettant de relier simplement certaines fonctionnalités de SAS aux applets. (affichage d ’une table, d’un cube, connexion au serveur SAS….)

8 Environnement de développement visuel et intuitif. Interface graphique (drag & drop). Des objets Java développés pour dialoguer avec un serveur SAS. webAf est un environnement de développement JAVA. Applet. Application Java. Java sur le serveur (Servlet, JSP, EJB). webAf permet le développement d’application de type : webAf

9 Requête Classes Java Serveur Web Poste Client Navigateur HT ML Classes Java Serveur Web Poste Client Navigateur HT ML Téléchargement Classes Java Serveur Web Poste Client Navigateur HT ML Machine virtuelle JAVA Fonctionnement général d’une applet

10 Applet générée par webAf Classes Java Serveur Web Poste Client Navigateur HTM L Serveur SAS Modules: Connect, IntrNet … Machine virtuelle JAVA Connexion TCP/IP Non Utilisé Un véritable mode de fonctionnement Client-Serveur (JAVA-SAS)

11 Applet générée par webAf (schéma d’architecture) Le Spawner (coté serveur de données) est un processus en attente des requêtes des utilisateurs. Quand l’applet est exécutée il se charge d’ouvrir une nouvelle session SAS. L’applet peut alors communiquer directement avec cette session SAS. Au chargement de la page HTML contenant l’applet JAVA générée par WEB/AF, le serveur WEB envoie au poste client l’ensemble des classes (généralement compressées) nécessaires à son exécution.

12 Finalité de la technologie webAf Permettre de développer de façon simple des "clients intelligents". C'est à dire des clients capables : d'accéder à une session SAS. d'accéder de façon transparente à des objets SAS/AF. d'accéder à la puissance de calcul de SAS à travers les procédures. d'accéder simplement aux données SAS (Tables, MDDB...). Permettre de cacher la complexité des applications distribuées (Architecture 3 tiers, Remote Method Invocation, CORBA). Permettre à des non spécialistes JAVA de développer des applications ou des applets à travers une interface graphique utilisant des composants Java pré-développés (SAS Java Beans, Viewer, Models).

13 Applet générée par webAf

14 Bilan sur l’utilisation des applets webAf Niveau d’interactivité élevé pour des applications Web. Limite les accès au serveur Web pour résoudre des fonctionnalités applicatives. Puissance du langage de programmation JAVA. Temps de transfert et d’interprétation des classes JAVA sur le poste client. Compatibilité des classes développées avec le plugin installé sur le poste client. Le déploiement d’une application basée sur l’utilisation d’Applets n’est généralement envisagé que dans un environnement homogène et contrôlé. Problèmes de bande passante (Volumes à transférer : plugin + classes JAVA). Limites Apports

15 Bilan sur la technologie CGI Apports Limites Aucun problème de déploiement des applications. Robustesse de la solution (technologie la plus ancienne). Postes clients véritablement « légers » (pas de problème de compatibilité ou de présence de plugin JAVA). Connaissance de SAS. Niveau d’interactivité réduit. Les possibilités de capitaliser la compétence ou les expériences acquises ne sont pas facilitées.

16 Interactivité limitée au langage HTML & JavaScript Graphisme simple Peu d’outils SAS de développement (moins vrai avec ODS en V8) Graphisme évolué Outils et bibliothèques d’objets importants Possibilité de capitalisation (création de classes JAVA) Tableau de comparaison + CGI- Applet Maîtrise de JAVA nécessaire Déploiement compliqué Téchnique bien maîtrisée (langage SAS) Pas de déploiement sur le poste client + Applet- CGI

17 Définitions par SUN Microsystems. JavaServer Pages (JSP) Technique de développement plus rapide et plus facilement maintenable pour développer des applications web dynamiques. Java Servlets Apporte aux développeurs un mécanisme simple permettant d’étendre les fonctionnalités du serveur web et d’accéder à des applications existantes. Une Servlet peut être assimilée à une applet fonctionnant côté serveur sans représentation visuelle.

18 Requête Servlet Serveur Web Poste Client Navigateur JSP Serveur Web Poste Client Navigateur Téléchargement Serveur Web Poste Client Navigateur Execution + page de retour Mode de fonctionnement

19 Est-ce la première fois que cette page est appelée ? Compilation de la page en Servlet Son contenu a-t-il changé ? Exécution de la Servlet Requête JSP oui non Lorsqu’une requête JSP est exécutée, un moteur JAVA (JSP/Servlet) sur le serveur Web la prend en compte et suit le mode opératoire ci-dessous. Chaque page JSP est compilée en Servlet pouvant s’exécuter à la demande.

20 Mode de fonctionnement Configuration nécessaire Un serveur Web avec un moteur JSP d’installé. Exemple de configuration: Apache + Tomcat Un serveur Web couplé avec un des produits suivants: SociétéProduitSite Web IBMWebSphere http://www.software.ibm.com/webservers AllaireJRunhttp://www.allaire.com/products/jrun New AtlantaServletExechttp://www.newatlanta.com/ SunNetDynamicshttp://www.netdynamics.com/ Certains serveurs d’application supportent les deux fonctionnalités, celle de serveur Web et de moteur JAVA (WebSphere d’IBM, OAS d’Oracle, BEA, WebLogic…)

21 Synthaxe De code HTML et JavaScript De code JSP (JAVA) De balises spécifiques JSP Un fichier JSP est constitué :

22 Synthaxe de base <!– un commentaire HTML  <!– un commentaire HTML  Commentaire visible sur la page résultat générée par JSP Test.jsp HTML généré Commentaire caché (spécifiquement JSP) Test1.jspHTML généré

23 Synthaxe de base Déclaration de variables Test2.jsp HTML généré test Expression Test3.jspHTML généré

24 Synthaxe de base <% If (var1.equals(« test »)) { var1=« Test réussi »; } %> Test réussi Des Scriptlets Test4.jsp HTML généré Le code Java contenu dans les balises spécifiques doit être valide. Tous les objets utilisés doivent avoir leur classe importée ou alors ce sont des objets implicites supportés par JSP.

25 Synthaxe de base L’utilisation de JavaBean HTML généré Test Test5.jsp

26 Les Tags JSP La définition d’un Tag donne la possibilité d’encapsuler une fonctionnalité applicative récurante et de la mettre à disposition du développeur. Ces « Tags » permettent de séparer clairement le travail de présentation du développeur HTML, du travail associé au traitement des données. C’est un concept qui permet la capitalisation de composants réutilisables facilement d’un projet à l’autre. simple tag Simple Tag Exemple de tag simple Test6.jspHTML généré

27 Les Tags JSP

28 La possibilité de choisir une grande variété de JavaBeans développés pour être utilisée directement dans des pages JSP. Ces JavaBeans permettent entre autre de se connecter aux données SAS de l’entreprise : Accès aux données SAS d’un serveur distant. Visualiser ces données quelles soient multidimensionnelles ou pas. Soumettre des traitements SAS et en afficher le résultat (ODS). AppDev Studio apporte aussi la possibilité aux applications JSP d’utiliser son Middleware Server. Le Middleware Server permet le partage d’une même session SAS par plusieurs clients. Partager une même session SAS apporte plusieurs avantages : Diminution de la consommation en mémoire par client sur le serveur. Ouverture plus rapide d’une session SAS. L’apport d’AppDev

29 TransformationBeans Ce sont de nouvelles classes JAVA dont le rôle est de transformer l’information provenant du serveur SAS en HTML & JavaScript mais aussi en WML ou DHTML. L’apport d’AppDev InformationBeans webAF fournit une boîte à outil permettant aux développeurs de construire dynamiquement des applications JSP en relation avec le système SAS. Ces objets reprennent les fonctionnalités développées pour les applets. Ils sont appelés « InformationBeans ».

30 L’apport d’AppDev Data Viewers sasads:MDTable sasads:Table Form Elements sasads:Checkbox sasads:Choicebox sasads:Form sasads:Hidden sasads:Image sasads:Listbox sasads:Password sasads:PushButton sasads:Radio sasads:TextArea sasads:TextEntry Graphics sasads:Bar sasads:Combination sasads:Pie sasads:Scatter sasads:SegmentedBar iPage Elements sasads:iForm sasads:iMenu sasads:iText MDDB Tasks sasads:MDExportToExcel sasads:MDFinder sasads:MDMeasureStatSelector sasads:MDQuerySelector sasads:MDRowColumnSelector sasads:MDSortSelector sasads:MDSubsetSelector sasads:MDTopBottomSelector sasads:MDTotalsSelector SAS sasads:CatalogEntryList sasads:CatalogList sasads:Connection sasads:DataSet sasads:DataSetList sasads:LibraryList sasads:MDModel sasads:Rocf sasads:SASFileList sasads:Submit Selectors sasads:MenuBar sasads:TreeView Text sasads:Date sasads:StaticText sasads:Time Utility sasads:ClientInfo Une librairie de Tags WebAf

31 JSP avec WebAf

32 Aucun problème de déploiement des applications. Avantages liés à l’utilisation du langage JAVA. JAVA est plus qu’un simple langage de script, il offre de vastes possibilités d’ouverture vers des applications existantes de l’entreprises (Mail, LDAP…). Portabilité des applications et développement indépendant de la plate-forme choisie. Possibilité importante de capitalisation des développements. Postes clients véritablement « légers » (pas de problème de compatibilité ou de présence de plugin JAVA). Parcellisation des tâches : compétences HTML et JavaScript d’un côté et des compétences JAVA de l’autre (JavaBeans & TagLibs). Nouvelle technologie et nouvelle approche dans la manière d’élaborer une solution Web (assez radicalement différente des technologies CGI). La possibilité d’intégrer un « engine » JAVA au serveur Web n’est pas toujours possible quelque soit le serveur Web en place. La nécessité de connaître le langage JAVA (avec un bon niveau d’expertise). Apports et limites des JSP Limites Apports


Télécharger ppt "Les techniques de programmation JSP & Servlet dans l’offre AppDevStudio Atelier Technique SAS présenté par Denis MASSON 11 septembre 2001."

Présentations similaires


Annonces Google