dotnet versus j2eeomar.aboukhaled.home.hefr.ch/appendices/13juin02_omar.pdf · ication discussion...
TRANSCRIPT
1
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR1
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
J2EE vs .NET, les enjeux des serveurs d'applications
DotNETDotNET J2EEJ2EEversusversusles frles frèères ennemisres ennemis
Omar ABOU KHALED [email protected]
C2007026 429 65 89
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR2
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Introduction• Le contexte actuel:
– Intégration, Réutilisabilité, Intéropérabilité• Évolution au niveau commercial
– Relations: B2C, B2B, B2…• Évolution au niveau technologique
– Architectures• Client/serveur (2,3) approche distribuée• Programmation par composant
– Les Assembly pour dotNET– Les EJB pour J2EE
– Rôle de XML • Introduction des Web services
– Logiciel considéré comme service• Introduction de J2EE et dotNET
– Les points communs– Les divergences
2
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR3
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Les portails: une évolution naturelle…
Intranet
Employés
Internet
Commerceélectronique
Extranet
Fournisseurs
Clients
Distributeurs
Revendeurs
Prodigue un accès personnalisé à de l’information pertinente ainsi qu’àdes applications pour les employés, la clientèle, les distributeurs et revendeurs, et les fournisseurs de l’entreprise.(GARTNER)
Clients
Employés Fournisseurs
Distributeurs
portail portail
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR4
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Business Processes: une évolution naturelle…• Extension du « business processes » de l’intra-entreprise
vers l’inter-entreprise
• L’utilisation du principe (modèle) de “self-service” pour des agrégations de partenaires et de consommateurs.
Flight ReservationCruise Reservation
Car RentalHotel Reservation
Single IntegratedTravel Web Site
Restaurant Chain
Auto-order new supplies
Orders are sent todelivery company
Supply warehouse
Deliveries are made
3
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR5
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Business Processes: une évolution naturelle…• Focalisation sur le « core business » (les
compétences) et la sous-traitance pour le reste.
Home loanprocessing
Credit check
Outsource creditcheck function
Home loanapplicant
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR6
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Les portails: mise en place $ ?
4
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR7
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Constats !• Des besoins:
– Intégration– Réutilisation– Intéropérabilité
• Des résultats: – Arrivée des frameworks
• J2EE, • dotNet
– La naissance de Web services • SOAP + WSDL + UDDI
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR8
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
L’évolution des architectures• Modèle client serveur 2 tiers
– Mainframes– Terminaux de connexions
SGBDDonnées
Proc. stock.
Client
Application C/S
IHM Logiquemétier
Requêtes
Transactions
Connections
Serveur
SGBDDonnées
Proc. stock.
Client
Application C/S
IHM MiddlewareC/S
MiddlewareC/S
Logiquemétier
Requêtes
Transactions
Connections
ServeurSGBDR
Serveur
• Modèle client serveur 3 tiers– PCs autonomes
• CORBA (common objectrequest broker architecture)
• COM (component objectmodel)
– PCs en réseaux• IIOP (Internet Inter-ORB
Protocol)• DCOM (Distributed COM)• RMI (Remote Method
Invocation)
5
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR9
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
• Modèle distribué
L’évolution des architectures• Modèle du serveur
applicatif– Les problèmes de
CORBA/IIOP, DCOM, RMI:
• Complexité– Installation,
configuration, etc.• Communications
– Symétrie au niveau modèle objet distribué
• Sécurité– Faire communiquer
via» Les firewalls et
les proxys
SGBDDonnées
Proc. stock.
Client
Application C/S
IHM MiddlewareC/S
ServeurSGBDR
Serveur applicatif
Services techniques
Logiquemétier
Application 1
Application 2
container
jdbc jts version cycle vie
Composants Métiers
infrastructure
Logique métier
Service d'infrastructure de base
Gestion automatisée
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR10
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
L’évolution de la programmation
OO-ADAOO-COBOLJAVA
DCOM CORBA EJB dotNet
SOAP
GMLSGML
XMLHTML
XHTML
ODBMS
Object world
Component world Document world
FORTRANALGOL
BASIC
VISUAL BASIC
PASCAL
ADAC
COBOL
RDBMS
Programming worldCode-centric Data-centric
C++
WSDLWeb Services
UDDI
J2EE
6
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR11
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Évolution de la programmation"Programming in the large vs programming in the small"
• Motivations– Construction d’applications par assemblage d’entités existantes ( =
composants )– Définition de connecteurs et de schémas de connexions entre les
composants• définition d'une architecture logicielle
– Formalisme pour décrire les interactions entre composants– Formalisme pour décrire le déploiement des composants– Programmation à gros grain ("in the large")
• Programmation orientée composant– programmation par assemblage plutôt que par développement– focaliser l’expertise sur les problèmes "métiers" plutôt que
"techniques "– un autre pas vers "encore plus" de réutilisabilité
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR12
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Évolution de la programmation: les composants• Définition: module logiciel
– qui exporte différents attributs, propriétés et méthodes
– qui est prévu pour être configuré– qui est prévu pour être installé– qui fournit un mécanisme lui permettant de
«s'auto-décrire »• Caractérisation d'un composant
– fournit des services– utilise d'autres composants– possède des propriétés configurables– spécifie ses dépendances avec l'environnement
• en terme de système (OS, librairies, ...)• en terme de services (transaction, sécurité,
persistance, …)
composant
Propriétésconfigurables
Dépendanced’environnement
Servicesfournis
Connexionscomposants
7
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR13
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Les composants• Environnement d'exécution d'un
composant• Conteneur
– encapsulation d'un composant– prise en charge (masquage) des
services systèmes– prise en charge des connexions entre
composants– invocations et événements
• Serveur d'applications– structure d'accueil pour les
conteneurs– espace d'exécution– médiateur entre les conteneurs et le
système/middleware
ServeurServeurd’applicationd’application
Container
composant
serviceservice
service
ServeurServeurd’applicationd’application
Container
composant
service service
client
composant
Programmation par composant:•Les Assembly pour dotNET•Les EJB pour J2EE
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR14
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
XML: l’évolution des données
Gartner Group
“Legacy data should be left in place, with an XML-based mid-tier server translating
outgoing legacy data to XML format and translating incoming XML to legacy format.”
“XML technology, can help enterprises significantly reduce the costs involved in enterprise data
exchange, enabling them to implement efficient e-business processes.”
• Prédictions des analystes• By 2002*
– XML-based technology a $2.1 billion market– Will account for 25 % of all data
• XML tools products & services a 1.08 billion market in 2000 *• By year-end 2001, application processing of XML-defined data will be as
common as relational database transactions are today (0.8 probability)*– * source: CAP ventures & GARTNER Group
8
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR15
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
XML et l’intégration des applications
[Source: Gartner Group]
Travail spécifique80%
Infrastructure réutilisable 20%
sans XML
Infrastructure réutilisable
90%
Travail spécifique 10%
avec XML
“A typical enterprise will devote 35 - 40% of its programming budget to develop and maintain ‘extract and update’ programs whosepurpose is solely to transfer information between different databasesand legacy systems.”
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR16
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Où XML est il utilisé ?• Les éditeurs de logiciels B2B
– Utilise XML comme format d’échange entre applications• Les fournisseurs de middleware
– Utilise XML pour la configuration des applications• Les fournisseurs de bases de données
– Utilise XML pour le stockage • Native• Réplique depuis RDBMS
• Les fournisseurs de contenus– Utilise XML pour la publication multi supports
9
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR17
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Résumons la situation• Architectures
– Client/serveur– Applications Distribuées
• Programmation par composants– Assembly et EJB
• Rôle primordiale de XML au niveau:– Client – Middleware– Serveur
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR18
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Browse Browse the Webthe Web
Program Program the Webthe Web
Evolution vers les Web Services
TechnologyTechnology
Web ServicesWeb Services
XMLXML
ProgrammabilityProgrammability
HTMLHTML
Web PagesWeb Pages
PresentationPresentationStandardStandardFTP,FTP, EE--mail, Gopher
mail, Gopher
TTCCP/IPP/IP
ConnectivityConnectivityInnovationInnovation
10
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR19
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Evolution vers les Web ServicesInterface Definition
Function Accessibility
Interface Format
Messaging Protocol
Proprietary
Private, Static
Proprietary, binary
Private Networks
OPEN Standard
Public, Dynamic
OPEN Standard, text
Firewall Friendly
J2EE/ EJBCOM/ DCOMCORBA
WebServices
Web Web ServiceService
Web Web ServiceService
XMLXML
HTMLHTML
ClientClient
XMLXML
Web Web ServiceService
XMLXML
Web Web ServiceService
XMLXML
XML
XML
SOAPSOAP
SOAPSOAP
SOAPSOAP
SOAPSOAP
SOAP
SOAPComposants
programmable pour le Web
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR20
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Web Services – spécifications
MessagingWeb Services must be able to communicate
through corporate firewalls and overpublic networks
Service DescriptionWeb Services interface requirementsand functionality must be described
Registration and DiscoveryWeb services must be registered in
universally accessible directory
StandardProtocolsFunctionality
must beachievable
usingOPEN and
freelyavailablestandards
11
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR21
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Web Services – les technologies
MessagingSimple Object Access Protocol (SOAP)over any transport layer protocol such as
HTTP, SMTP
Service DescriptionWeb Services Definition Language
(WSDL)
Registration and DiscoveryUniversal Description, Discovery and
Integration Service (UDDI) StandardProtocols
UDDI,WSDL,SOAPUsesXML
schema
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR22
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
DiscoveryDiscovery
Let me talk to you (SOAP)Let me talk to you (SOAP)
Les protocoles des Web Services
How do we talk? (WSDL)How do we talk? (WSDL)Web Web
ServiceService
WebWebService Service
ConsumerConsumer
UDDIUDDI
Find a ServiceFind a Service
return service response (XML)return service response (XML)
http://yourservice.com/svc1
return service descriptions (XML)return service descriptions (XML)
http://yourservice.com/?WSDL
HTML with link to WSDLHTML with link to WSDL
http://yourservice.com
http://www.uddi.org
Link to discovery documentLink to discovery document
12
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR23
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Les deux frameworks leader• J2EE
– Commerciales • Oracle, HP, Borland, Websphere, Orion, etc.
– Les open sources• JBOSS, Tomcat, etc.
• dotNET– Commerciale
• Microsoft– Les open sources
• dotGNU, MONO, etc.
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR24
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Historique1975-1995.Sun Microsystems: Créé en 1982. « Le réseau est l’ordinateur ». Surtout une compagnie de
matériel (hardware) vendant des serveurs. Créateur du système d’exploitation SOLARIS, utilisé sur le matériel de Sun.
Microsoft: Conception de logiciel seulement. Fondé en 1975. Incorporé en 1981. MS-DOS 1.0 dans le premier IBM PC en 1981. 1985, Windows 1.0 voit le jour, suivi en 1990 de Windows 3.0 et en 1995 de Windows 95. Microsoft développe aussi des logiciels pour Macintosh.Une certaine compétition au niveau des systèmes d’exploitation au travers de IBM (Windows vs Solaris). Mais Microsoft est plus actif du coté des ordinateurs de bureau (desktop) tandis que Sun est plus actif du coté des serveurs.
Mai 1995: Une nouvelle plate-forme de programmation est lancée par Sun. Elle est portable et elle comprend Java, un langage orienté objet de haut niveau.
Mars 1996: Microsoft achète une licence Java de Sun pour pouvoir utiliser les Applets Java dans Internet Explorer et offrir des outils de développement pour Java (Visual J++).
Octobre 1997: Action en justice de Sun contre Microsoft pour bris de contrat: Sun estime que Microsoft n’a pas respecté la licence en développant une version de Java incompatible avec les spécifications de Sun. Microsoft continue de développer sa propre version de Java. Librairies, compilateur, machine virtuelle.
Novembre 1998: Sun obtient une injonction qui empêche MS de vendre tout produit Java incompatible avec ses spécifications.
Juin 1999: Sun annonce le lancement de J2EE. Un ensemble de standard permettant de créer des applications d’entreprise en n’utilisant que le langage Java.
13
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR25
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Historique (Suite…)Juin 2000: Microsoft annonce une très vaste initiative, .NET, une plate-forme pour créer des Web Services
basés sur XML. La plate-forme utilise entre autres un nouveau langage semblable à Java appelé C# (see-sharp).
Janvier 2001: Sun et Microsoft en arrivent à un arrangement sur Java. Sun obtient 20 millions. Microsoft ne peut plus développer de produits incompatibles avec les spécifications de Sun mais peut continuer àdistribuer les versions actuelles.
Juin 2001: Microsoft rend disponible la version BETA 2 de son .NET Framework SDK.Juillet 2001: Microsoft annonce que sa machine virtuelle pour Java ne sera pas distribuée avec son
nouveau système d’exploitation, Windows XP, ni dans Internet Explorer 6 (mais elle sera disponible par téléchargement sur le site de Microsoft).
Octobre 2001: Lancement de Windows XP. Cette nouvelle version de Windows est basée sur les technologies NT et 2000. Les deux branches de systèmes d’exploitation de Microsoft sont finalement unifiées par cette nouvelle version (95/98/Millenium par rapport à NT/2000).Windows XP ne contient pas le Framework .NET.
Décembre 2001: Sun se lance lui aussi dans les Web Services, en rendant disponible sur le web un ensemble de librairies Java et d’outils pour la création et l’utilisation de Web Services.
Janvier 2002: Le .NET Framework SDK version finale est disponible pour téléchargement sur le site webde Microsoft.
Février 2002: Microsoft lance Visual Studio .NET.Mars 2002: Nouvelle action en justice de Sun contre Microsoft. Environ 1 milliard de dollars est demandé,
l’inclusion de Java dans Windows XP et IE6, ainsi que la divulgation d’un ensemble d’API de Windows XP.
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR26
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Le Modèle J2EE
14
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR27
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Le Modèle .NET
Operating SystemOperating System
Common Language SpecificationCommon Language Specification
Common Language RuntimeCommon Language Runtime
ADO.NET: Data and XMLADO.NET: Data and XML
VBVB C++C++ C#C# Visual Studio.NET
Visual Studio.NET
ASP.NET: Web ServicesASP.NET: Web Servicesand Web Formsand Web Forms
JScriptJScript ……
WindowsWindowsFormsForms
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR28
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Le mécanisme J2EE Language-Dependent & Platform-Independent
Person.java Company.java
Java VMPersonbytecodes
Companybytecodes
Addressbytecodes
Dep
loy
Address.java
LinuxLinux WindowsWindows SolarisSolaris
Java VM Java VM Java VM
Dep
loy
Dep
loy
15
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR29
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Le mécanisme .NET Language-Independent & Platform Dependent
Person.vb Company.cbl
CLRPersonMSIL
CompanyMSIL
AddressMSIL
Dep
loy
WindowsWindows
CLR
Address.cs
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR30
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
J2EE: Modèle de programmation
16
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR31
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
.NET: Modèle de programmation
Windows 98/Me
NT/2000/XP
Linux (Mono::)
.NET CLR .NET CLR
Autre…
.NET CLR
.NET Framework Libraries
Code Source(C#, C++, VB.NET, J++, Cobol,
Smalltalk, Eiffel, etc.)
« Managed Code »(MSIL)
.NET CLR .NET CLR .NET CLR
.NET Compact Framework Libraries
CLS/CTSCommon Language Runtime
JIT Compiler
Native Code
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR32
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Les librairies JavaJ2SE– Java 2 Standard EditionJ2EE– Java 2 Enterprise EditionJ2ME– Java 2 Micro Edition
J2SE1.0: 212 classes1.1: 504 classes1.2: 1781 classes1.3: 2130 classes1.4: 2738 classes
17
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR33
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
System
System.Data System.Xml
System.Web
GlobalizationDiagnosticsConfigurationCollections
ResourcesReflectionNetIO
ThreadingTextServiceProcessSecurity
DesignADO
SQLTypesSQL
XPathXSLT
RuntimeInteropServicesRemotingSerialization
Serialization
Configuration SessionStateCaching Security
ServicesDescriptionDiscoveryProtocols
UIHtmlControlsWebControls
System.Drawing
ImagingDrawing2D
TextPrinting
System.WinFormsDesign ComponentModel
Les librairies dotNET
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR34
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Client léger et multi-tiers XML avec J2EE &.NET
Client légerServeur
d’applicationsBase dedonnées
Navigateur Web+ Applet ContainerAssistant personnel
Container Web+ JSP (Java Server Pages)+ Servlet
Serveur deprésentation
Container EJBContainer Web+ Servlet
HTML/WML
XML/HTTP
RMI/IIOP
XML/HTTP
Client légerServeur
d’applicationsBase dedonnées
Navigateur Web + composants ActiveX(MSXML)Assistant personnel
Internet Information Server+ ASP (Active Server Pages)
Serveur deprésentation
MTS/COM+IIS/ASP
HTML/WML
XML/HTTP
DCOM
XML/HTTP
.NET J2EE
Présentation Tier
Business Tier
Database Tier
ASP .NET JSP/ Java Servlets
COM+Visual Studio .NET
EJBJava Language System
SQL ServerADO compatible DB JDBC compatible DB
18
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR35
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Similarités entre J2EE & .NET
JDBC 2.0ADO.NETAPI DB relationelle
JTSMS-DTCDistributed Transaction
JNDIADSINaming and Directory Service
Message Driven Beans (EJB 2.0)
Queued (COM+)Composants asynchronnes
JMS 1.0MSMQMessage Queue API
JAASCOM+ Security Call ContextAPI de sécurité
EJBCOM+Infrastructure
Servlets, JSPASP.NETModèle de programmation
RMI/IIOPDCOM, SOAPProtocole de distribution
J2EE.NETTechnologies
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR36
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Conclusion & Discussion• Stratégies de Sun
– Mettre rapidement Java sur les cellulaires et les gadgets électroniques
– Offrir rapidement un bon support pour les Web Services (ONE platform )
– Éviter la fragmentation de la plate-forme tout en rendant Java profitable.
• Stratégies de Microsoft– Stratégie axée sur les Web Services. Web Services pour les
gadgets électroniques dès la deuxième moitié de 2002.– Utiliser son avance coté desktop pour mieux se positionner dans
le marché des cellulaires et gadgets électroniques.– Architecture ouverte aux autres plate-formes mais support
principalement pour Windows.
19
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR37
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Références• Livres:
– Services Web avec SOAP, WSDL, UDDI, ebXML, etc. auteur: Jean-Marie Chauvet, Eyrolles, isbn: 2-212-11047-2
– Services Web XML professionnel, auteur: Patrick Cauldwell, al, WROX, isbn: 2-7440-9008-0
– Professional Java Web Services, auteur: Mack hendricks, al, WROX, isbn: 1-861003-75-7
– Professional Java SOAP, auteur: Henry Bequet, WROX, isbn: 1-861006-10-1
• Liens:– http://uddi.microsoft.com– http://xml.apache.org/dist/soap/– http://www.develop.com/soap/– http://www.ibm.com/services/uddi– http://www.ibm.com/services/uddi/testregistry– http://uddi.microsoft.com– http://test.uddi.mirosoft.com– http://www.w3.org/TR/SOAP– http://www.w3.org/TR/WSDL– http://www.uddi.org
Mob
ile In
form
atio
n Sy
stem
Lab
orat
ory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ryM
obile
Info
rmat
ion
Syst
emLa
bora
tory
Mob
ile In
form
atio
n Sy
stem
Labo
rato
ry
Omar AbouKhaled / copyright © MISL / EIA-FR38
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Act
ualit
é N
ews
Info
rmat
ion
Com
mun
icat
ion
disc
ussi
on a
ctua
lité
New
s In
form
atio
n C
omm
unic
atio
n di
scus
sion
Débat1. Réutilisation de l'existant / Support des "Legacy
Systems " 2. Front-End (e.g. ASP/WebForms et JSP/Swing/...)3. Environnement de développement 4. Sécurité et Authentification 5. Web Services et Interopérabilité