Présentation J2EE. Stéphane Croisier, Directeur Serge Huber, Directeur Technique. 13 Juin 2002. 2002 Jahia Ltd. All rights reserved.



Documents pareils
Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki

Introduction à la plateforme J2EE

Programmation Web Avancée Introduction aux services Web

Jahia. Guillaume Monnette École Ingénieurs 2000 Marne-La-Vallée IR3

Auto-évaluation Aperçu de l architecture Java EE

Jean-Philippe VIOLET Solutions Architect

Vulgarisation Java EE Java EE, c est quoi?

PRODUCTS LIST (updated 11th January 2010)

Europa. Développement JEE 5. avec Eclipse. K a r i m D j a a f a r. A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i

Youssef LYHYAOUI Ingénieur Java/J2EE, SOA, ESB, Web services 31 ans Statut : Indépendant SITUATION ACTUELLE

Mise en œuvre des serveurs d application

Environnements de Développement

Cedric Dumoulin (C) The Java EE 7 Tutorial

Hébergement de sites Web

JOnAS 5. Serveur d application d

Plan. Department of Informatics

INGÉNIEUR LOGICIEL JAVAEE / GROOVY 8 ANS D EXPÉRIENCE

DotNet. Plan. Les outils de développement

Comparaison des architectures J2EE et.net

Etude analytique des architectures applicatives

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft

Catalogue des Formations Techniques

Java pour le Web. Cours Java - F. Michel

J2EE - Introduction. Développement web - Java. Plan du chapitre

Les nouvelles architectures des SI : Etat de l Art

Windows (2000/NT), Solaris, AIX, HP-UX, Linux Haute disponibilité : SunCluster 3, Veritas Cluster Server 4. J2EE (JSP, Servlet, EJB, JTA), Open Source

Compte Rendu d intégration d application

Oracle9i Application Server version 2

Nouvelles Plateformes Technologiques

Projet. But: consultation en temps réel d événements (cours de bourse, trafic d envoi SMS ) sur des téléphones portables. Serveur de diffusion

Formation en Logiciels Libres. Fiche d inscription

«Consultant en système d'information et cloud computing»

Point sur les solutions de développement d apps pour les périphériques mobiles

10. Base de données et Web. OlivierCuré

La montée des bases de données open source

SOA Open Source Intégration des services et business process dans une architecture SOA Open Source. Bruno Georges JBoss, a Division of Red Hat

7 villa de la citadelle Né le 13 mai Arcueil Nationalité : Française. Développeur Web JEE COMPÉTENCES

Consultant MOE/Référent technique JAVA/J2EE JSF, RICH FACES

Notre Catalogue des Formations IT / 2015

PRIMAVERA P6 ENTERPRISE PROJECT PORTFOLIO MANAGEMENT WEB SERVICES

Open Source & Innovation exo Platform Oualid Chaker,

Fusion : l interopérabilité chez Oracle

Urbanisme du Système d Information et EAI

Formation : Langues : Types d Intervention et Secteurs d Activité :

Président d Inotekk Gestion de la société, développement du portefeuille clients, gestion et réalisation des projets informatiques

Hassene BELGACEM. Expériences Professionnelles. JEE architect / Technical leader. Ingénieur Informatique. Cycle Préparatoire

Architecture client riche Evolution ou révolution? Thomas Coustenoble IBM Lotus Market Manager

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.

les techniques d'extraction, les formulaires et intégration dans un site WEB

Les tableaux de bord de pilotage de nouvelle génération. Copyright PRELYTIS

Refonte front-office / back-office - Architecture & Conception -

Cadrage fonctionnel et technique des sites Visa Premier et Infinite. Réalisation des déploiements pour l hébergeur.

Messagerie asynchrone et Services Web

Direction des Technologies de l Information. Présentation OCDE. Contribution du Parlement européen. L utilisation de l OPEN SOURCE au PE

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

Java Enterprise Edition

Introduction aux «Services Web»

J2EE in practice. Olivier Liechti Patrik Fuhrer. Department of Informatics. Computer Science Master Course - SH 2004/05

Web Application Models

ez Publish Cloud Edition Présentation

Systèmes répartis. Fabrice Rossi Université Paris-IX Dauphine. Systèmes répartis p.1/49

Des solutions J2EE open source professionnelles adaptées à votre système d information d entreprise

Urbanisation des Systèmes d'information

1 JBoss Entreprise Middleware

2.1 Liferay en un clin d'oeil Forces, faiblesses, opportunités et menaces Résumé de notre évaluation... 5

Expert technique J2EE

Valorisez vos actifs logiciels avec Rational Asset Manager. Jean-Michel Athané, Certified IT Specialist IBM Rational Software

Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web»

Avant-propos 1. Avant-propos Organisation du guide À qui s'adresse ce guide?...4

What s New. Sun ONE Application Server. Version 7, Enterprise Edition

Assurances & Mutuelles, Industrie, Santé, Énergie, Transport, Médias / Multimédias, Télécoms, Services

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

CATALOGUE DE FORMATIONS

Transport de marchandises (messagerie nationale, express, affrètement) ; Domaine médical (gestion administrative, paie hospitalière).

W4 - Workflow La base des applications agiles

Ingénieur Développement Nouvelles Technologies

Oracle Fusion Middleware Concepts Guide 11g Release 1 (11.1.1) Figure 1-1 Architecture Middleware

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Applications distribuées: le retour du client "riche"

! " # $ % & OPN Day Paris 14 mars 2006

Virginie!SALAS Janvier!09! NFE107

Environnements de développement (intégrés)

Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David

SHAREPOINT PORTAL SERVER 2013

Apache Tomcat 6. Guide d'administration du serveur Java EE sous Windows et Linux. Résumé. Étienne LANGLET

<Insert Picture Here> Maintenir le cap avec Oracle WebLogic Server

Architectures n-tiers Intergiciels à objets et services web

Le cadre des Web Services Partie 1 : Introduction

Déployer Linux en toute sérénité. Francois Chazalon Directeur Marketing

Module BD et sites WEB

Ingénieur Informaticien 3iL Java EE

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean.

Urbanisation des SI. Des composants technologiques disponibles. Urbanisation des Systèmes d'information Henry Boccon Gibod 1

S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i

Cartographie du SI pour alimenter la CMDB

Marie-Christine Spengler

DEMARREZ RAPIDEMENT VOTRE EVALUATION

Transcription:

Présentation J2EE Stéphane Croisier, Directeur Serge Huber, Directeur Technique 13 Juin 2002

Table des Matières Qui sommes-nous? Introduction J2EE Architecture J2EE Avantages / Désavantages

Le Projet Jahia But: Développer un logiciel de Gestion de Contenu (CMS) et de Portail d Entreprise (EIP) Historique: - Version 1 basée en C++ multi-plateformes Résultat: 300 000 lignes de code pour moins de fonctionnalités que prévues - Version 2 - Migration sur plateforme J2EE Même taille de code pour beaucoup plus de fonctionnalités Critères: Portabilité (Unix, Linux; NT), Stabilité, Performance, Standardisation, Parts de marché potentiels les plus grandes, Réduction de la complexité, Concurrence

Jahia: Architecture logiciel Portlets Content Portal Server CMS Admin Center Jahia Foundation Server Java Application Server (J2EE) SGBDR LDAP

Pourquoi développer sur un Framework? Les systèmes d information deviennent: De plus en plus complexes (transactionnel; SGBD/LDAP; XML ) Hétérogénité des systèmes propriétaires ou dédiés (Legacy Systems) Demandes fortes d interconnexions (passage d une architecture «par silo» à une architecture par «couches de services interopérables») Changements technologiques permanents Souci de rationalisation économique Investissements et équipes de développement de plus en plus lourds Arriver à tout recoder soit-même est devenu impossible

Pourquoi développer sur un Framework? Conséquences: Similaire à des incubateurs pour les start-ups, il y a des avantages et des désavantages S appuyer sur une tuyauterie et des composants génériques existants et stables Volonté de réduire la complexité du projet Souci de se baser sur des standards afin d assurer la pérennité des développements effectués Recentrage sur la logique métier et la valeur ajoutée fonctionnelle et métier Stabilité du système/ Performance / Portabilité laissé autant que possible à des tiers. Culture globale homogène qui facilite le transfert des compétences Le choix d un framework est devenu incontournable pour tout projet de développement conséquents et donc, de facto, pour l ensemble du système d information.

Approche orientée composants Volonté de: 1) Ne pas réinventer la roue 2) D utiliser des composants tiers réutilisable, stables et standardisés 3) Créer sa propre bibliothèque de composants réutilisables afin de réduire les coûts à moyen et long terme. «La réutilisation logiciel peut réduire les coûts de développements de 15 à 75%. La réutilisation d un composant coûte 30 à 75% moins chère que son redéveloppement. En 2003, au moins 70 pourcent de toutes les applications seront construites à partir de composants.» Gartner, 2001

J2EE Intro Introduction à J2EE

J2EE

Produit versus Spécification J2EE n a pas la même signification que.net 1) J2EE est une spécification avec de multipes implémentations 2).NET est un mélange de produits et de spécifications Avant de détailler les deux solutions, il s agit donc de comparer ce qui est comparable. (.NET à considérer comme architecture de développement et comme langage(s)/runtime et non pas comme couches logiciels supplémentaires (base de données; progiciel de gestion de contenu; de portails d entreprise, d EAI ).

J2EE: un standard J2EE = Ensemble de spécifications issues de la collaboration entre différents éditeurs logiciels, développeurs et vendeurs hardware (JCP - www.jcp.org) - Java Community Process (environ 200 JSR en cours sur quasiment tous les thèmes possibles) ~40 vendeurs officiels implémentent tout ou partie de la spécification (app servers + outils de dév.) - No single -vendor lock-in Basé sur le language Java - JRE interprète du bytecode Compatibility Test Suite Une implementation de référence de chaque JCP est fournie J2EE Blueprints Design Guidelines sont également fournis

J2EE/Tools Players (~40) Complex Enterprise System IBM BEA Resin Silverstream Borland Iona Oracle Pramati SUN Macromedia Development Framework Apache JBoss JOnAS Enhydra HP Orion Free / Open Source > 5K USD > 15K USD > 25K USD

Evolution MS/J2EE JDBC EJB JSP JAXP J2EE J2EE Microsoft 1996 1997 1998 1999 2000 2001 Mar 1992 ASP MTS/COM+ SOAP.NET MSXML ODBC WinDNA

Parts de marché

J2EE = une commodité? Constat: J2EE devient une commodité. Conséquence: Les vendeurs s attaquent aux couches logiciels supérieures. Entre autres: Outils de développements SysAdmin/Load Balancing/ CMS/Portails d entreprise/serveur de Personalisation Calendar/Emails/Collaboration Ecommerce EAI / Intégration

Couches logiciels Tools Cache / Proxy / Fwall Commerce Integration / EAI Collaboration Content Mgmt Wireless/Mobile Database Application Server Management

Couches Logiciels Visual Age for Java WebSphere Studio WebSphere Business Components WebSphere Edge Server WebSphere Commerce Srvr WebSphere Integration Lotus / WebSphere Portal Content Mgmt Server Mobile Info Server DB2 UDB WebSphere App Server (TXSeries,, CICS, Encina) Multiple Operating Systems IBM Extras: Voice Server Translation Server Site Analyzer Personalization Server Tivoli

Stack Complet J2EE/Tools (IDE) GRATUIT Un serveur J2EE complet avec un environnement de développement performant peuvent désormais être installé gratuitement. En outre, la totalité du code source est disponible (open source) IDE Framework/Components Application Server Database Operating System SUN NetBeans / IBM Eclipse Apache / Open Source Tomcat / JBoss MySQL / PostgreSQL / Interbase Linux

J2EE Architecture Architecture J2EE

J2EE Containers «The shared vision between J2EE and.net is that there is an incredible amount of «plumbing» that goes into building web services, such as XML interoperability, load balancing and transactions.rather than writing all that plumbing yourself, you can write an application that runs within a container that provides thus tricky services for you.» The Middleware Company, June 2001

Architecture trois tiers

J2EE et.net: Même Concept Browser Device HTML, XML HTTP any http server JDBC Servlet HOME or JSP REMOTE RMI/IIOP Security JVM RMI/IIOP Transactions Concurrency Context any OS Entity Bean Session Bean EJB Server JDBC Data Containers App Server Browser Device ADO.NET HTML, XML HTTP IIS ASP.NET CLR.NET Rem. Security Transactions Concurrency Context Managed Object Managed Object ADO.NET Data Windows

Architecture trois tiers - J2EE Le tiers intermédiaire permet d assurer la disponibilité, la montée en charge et la stabilité. Les containers offrent des services de sécurité, de transactionnel ou de connectivité.

Architecture trois tiers - Microsoft Offre Microsoft: Très similaire du moins dans le design architectural.

J2EE Containers

Containers and Components

EJB

Types d EJB Type d EJB Utilité Session Entity Message Effectue une tâche pour un processus client Représente un objet métier stocké dans une base de données Ecoute des messages envoyés à travers l interface JMS (Java Messaging Service), en les traitant de manière asynchrones EJB Session Entity Message Stateless Stateful BMP CMP

XML XML/Web Services et J2EE Java XML Pack Summer 02 Release Java API for XML Messaging (JAXM) v1.1 Java API for XML Processing (JAXP) v1.2 Java API for XML Registries (JAXR) v1.0_01 Java API for XML-based RPC (JAX-RPC) v1.0 SOAP with Attachments API for Java (SAAJ) v1.1 Java API for XML Binding (JAXB) Implementing Enterprise Web Services Java APIs for WSDL Java Services Framework Web Services Security Assertions XML Transactioning API for Java (JAXTX) Java Process Component API (JPC)

Stockage JDBC «Low-level» database access in Java Drivers avaible for all major database vendors, including MS SQL Server, Oracle, Connection Pooling Result set navigation, updating Batch updates Savepoints JDO What is JavaTM Data Objects (JDO)? JDO (Java Data Objects) is an API for transparent database access. The programmer can write code in the Java programming language that transparently accesses the underlying data store, without using database-specific code.

La fondation Apache (1) Offre d excellents outils de développement open source en Java Quelques exemples : Ant, outils de build, similaire aux Makefile mais en XML Tomcat, container de servlet à la norme 2.3, utilisé dans l implémentation de référence de J2EE Turbine, framework de développement d applications web Log4J, librairie et outils pour afficher et gérer des messages de logs Lucene, moteur de recherche en Java Struts, implémentation MVC pour le développement rapide d application web Certains de ces outils sont utilisés dans des environments de productions, voire même livrés avec des produits commerciaux (ie Borland Enterprise Server, JBuilder, )

La fondation Apache (2) Projets XML de la fondation Apache AXIS - An implementation of the SOAP ("Simple Object Access Protocol") submission to W3C. Batik - A Java based toolkit for Scalable Vector Graphics (SVG). Cocoon - XML-based web publishing, in Java. FOP - XSL formatting objects, in Java. SOAP - Simple Object Access Protocol. Xalan - XSLT stylesheet processors, in Java and C++. Xerces - XML parsers in Java, C++ (with Perl and COMbindings). Xindice - A native XML database. XML-RPC - A Java implementation of XML-RPC, a popular protocol that uses XML over HTTP to implement remote procedure calls. XML Security - Create and verify arbitrary forms of XML Signatures.

Autres standards J2EE JMS - Java Message Service JNDI - Java Naming and Directory Interface JTA - Java Transaction API JavaMail API JCA - J2EE Connector Architecture JAAS - Java Authentification and Autorisation Service Et encore beaucoup d autres «J*»

What s coming next in J2EE? Peer to Peer Projet JXTA Java Server Faces Portlet API Content API

J2EE Moins et Plus Avantages et Désavantages de J2EE

Moins et Plus de J2EE Moins: Indépendance par rapport au vendeur - Vraiment? Interprétations différentes des standards et lock-in par rapport aux couches logiciels supplémentaires Encore des manquements pour certaines fonctionnalités clés (ex: ACL; batch jobs; ) Problématique de formation et d utilisation (valable pour tous les frameworks) La plateforme est immensément riche mais qui peut se vanter de la connaître à fond. Pas assez de «guidance» et d outils WYSIWYG Manquement actuel au niveau du front-end (particulièrement Web) Pris par surprise par.net Java Community Process multi-vendeurs sont parfois trop lents et pas assez ambitieux (politique du compromis et du plus petit dénominateur commun)

Moins et Plus de J2EE Plus: Politique du choix (choix du vendeur, du framework, des outils, des solutions) Idéal pour des environnements hétérogènes Mature et éprouvé (scalable, available, reliable) Evolution du framework issue du travail d un consortium ouvert (JCP) où tous le monde peut participer Forte culture Java existante - Forte pénétration chez les développeurs seniors et les architectes logiciels Force de Java dans le domaine éducatif (formation des futurs ingénieurs sur plate-forme J2EE) Bonne image de Java dans la presse (côté anti-monopolistique, antigrand méchant loup) Plus longue expérience côté Serveur, Transactionnel et Web Devant en matière de «Wireless» et de «Peer-to-Peer»

Conclusion Intro Général 1) J2EE n est plus l unique solution pour le développement en entreprise a) «Competition is good» bien qu il y ait toujours eu une vive compétition au sein de Java entre les différents vendeurs. b) Regret pour les développeurs qu il y ait deux plateformes très, très similaires, qui pour des raisons politiques, vont entraver les initiatives d intégration en entreprise. 2) Une architecture orientée composants réutilisables est devenu une base minimum de développement a) Rôle de plus en plus primordial de l Architecte (choix des standards et assemblage des meilleurs composants) b) Le vaste choix de solutions offert en Java est excellent mais demande plus d analyse et une meilleure compréhension des problématiques techniques 3) Choix d une plate-forme= facteur stratégique déterminant Dans notre cas, si.net prend la moitié des parts de marché = moitié de clients potentiels en moins pour notre progiciel. Idem du côté de l acheteur (deux équipes)