Download presentation
Presentation is loading. Please wait.
Published byJocelyn Cross Modified over 9 years ago
2
W3car project Emmanuel Castellani Laurent Marchese Nicolas Pastorelly Wolfgang Kieß Johannes Walch Claudia Schremmer Teleseminar Nice-Mannheim Year 2001-2002
3
1 General information 1.1 Big Picture 1.2 Initial Spec 1.3 Actual Spec 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration Overview
4
W3car Castellani – Marchese – Kiess - Walch Big Picture 1 General information 1.1 Big Picture 1.2 Initial Spec 1.3 Actual Spec 2 Technical informations 3 Demonstration DCX Speed3 Project Prototype of UMTS car on Monaco Telecom network Emphasis on bandwidth-consuming type of 3G services DCX, Sun, Jentro, Siemens, MDBS joint venture
5
W3car Castellani – Marchese – Kiess - Walch W3Car Services 1 General information 1.1 Big Picture 1.2 Initial Spec 1.3 Actual Spec 2 Technical informations 3 Demonstration
6
W3car Castellani – Marchese – Kiess - Walch Initial Specification 1 General information 1.1 Big Picture 1.2 Initial Spec 1.3 Actual Spec 2 Technical informations 3 Demonstration Emergency service for UMTS car Using audio and video communication SUN-Jentro Platform for InCar Computer not ready Speed3 Project not started yet Very complex and proprietary technologies
7
W3car Castellani – Marchese – Kiess - Walch Actual Specification 1 General information 1.1 Big Picture 1.2 Initial Spec 1.3 Actual Spec 2 Technical informations 3 Demonstration New focus : Architecture prototyping instead of Features Delivery Entertainment(Backseat) Applications Java Client Prototype for IPAQ/mobile network device
8
W3car Castellani – Marchese – Kiess - Walch Important Technology 1 General information 1.1 Big Picture 1.2 Initial Spec 1.3 Actual Spec 2 Technical informations 3 Demonstration Technologies/Features proposed : Java XML-RPC / SOAP based communications Integrated web browser Download Java(jar-file) Entertainment Applications to IPAQ
9
W3car Castellani – Marchese – Kiess - Walch Application Overview 1 General information 1.1 Big Picture 1.2 Initial Spec 1.3 Actual Spec 2 Technical informations 3 Demonstration
10
W3car Castellani – Marchese – Kiess - Walch Server 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration
11
W3car Castellani – Marchese – Kiess - Walch Server 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration DBMS (MySql) Web Server (Servlets, JSP) Dynamic Contains references of games JSP : dynamic Web Page showing games Servlet : producing messages Multiple Game servers
12
W3car Castellani – Marchese – Kiess - Walch Server 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration DBMS Games Server Architecture Games Server Web Server JSP Servlets...
13
W3car Castellani – Marchese – Kiess - Walch Games Development 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration
14
W3car Castellani – Marchese – Kiess - Walch Games Development 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration Anybody could develop games Need to standardize the games Games must extends an abstract class and redifined start() and stop() methods =>To cast objects downloaded into Games like Plugins system
15
W3car Castellani – Marchese – Kiess - Walch Browser 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration 1- IceBrowser (bean) Complete Web browser Problems : Conflict with our ClassLoader No compatibility with IPAQ 2- Simple java files using swing API No ClassLoader, no security manager... Two possibilities :
16
W3car Castellani – Marchese – Kiess - Walch ClassLoader 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration
17
W3car Castellani – Marchese – Kiess - Walch ClassLoader 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration To download and instantiate jarFile via HTTP First version: Used JarURLConnection to download the game directly in the virtual machine Problem with the jdk1.1.8 Second version: Used simple URLConnection The jarFile is written to the fileSystem
18
W3car Castellani – Marchese – Kiess - Walch ClassLoader 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration
19
W3car Castellani – Marchese – Kiess - Walch Communication 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration
20
W3car Castellani – Marchese – Kiess - Walch Communication 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration SOAP : Complex protocol SOAP-Server on IPAQ ? => limited Resources Extensible architecture for future integration We wanted to have a flexible, easy to use protocol which can easily be debugged (and simulated manually) => XML
21
W3car Castellani – Marchese – Kiess - Walch JAXB messaging 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration JAXB = Java XML Binding In our case marshal (serialize to XML) the Message and transmit it as String Receiver unmarshals the XML String to a Message Marshaling/Unmarshaling framework is generated with a tool (castor) Grammar (w3c schema ) Class (Java) XML-Document Object Instance
22
W3car Castellani – Marchese – Kiess - Walch Communication 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration Message objects with set and get methods Call the send(Message m) Method Message is transformed into XML, send as a String and the object reconstructed on the receiving side. Message Object Message Service Sender
23
W3car Castellani – Marchese – Kiess - Walch Krypto Package 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration
24
W3car Castellani – Marchese – Kiess - Walch Krypto Package 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration Motivation Download an application and execute it risk of malicious code security problem Solution Trusted party signs the jar file using asymmetric cryptography Before loading, verify the signature
25
W3car Castellani – Marchese – Kiess - Walch How it works 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration Generate a key pair with the JAVA keytool Sign the file with the W3carSigner On each request for a game, the Signature is transmitted with the other information via the MessageService The client uses the signature to verify the file before executing the game
26
W3car Castellani – Marchese – Kiess - Walch Implementation 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration Java.security package contains all necessary classes … the package is not supported by the JVM on the IPAQ the signature mechanism is disabled on the IPAQ, but will be demonstrated on a laptop.
27
W3car Castellani – Marchese – Kiess - Walch Ipaq & Java 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration Insignia Jeode JRE Conflict with our ClassLoader Java 1.1 compatible including java.security Commercial package Sun Personal Java JRE Java 1.1 compatible without java.security Other OS than Windows CE 3.0 Linux Java OS
28
W3car Castellani – Marchese – Kiess - Walch Evaluation of JRE 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration Problem : Browser we choose needs swing Solution : Porting swing to IPAQ using jar file Swing is only lightweight implementation on top of AWT did not work with Jeode PersonalJava JRE of Choice : Personal Java
29
W3car Castellani – Marchese – Kiess - Walch Java on IPAQ 1 General information 2 Technical informations 2.1 Server 2.2 Games 2.3 Browser 2.4 ClassLoader 2.5 Communication 2.6 Krypto Package 2.7 IPAQ & Java 3 Demonstration Java is very slow on IPAQ due to limited resources Developing on a limited device is difficult, testing takes a lot of time Better environment : a specialized Java OS or compiled binaries
30
Demonstration
31
Conclusion The goal of the project was reached. Work Experience : Similiar to an industrial project Investigation on the best technologies, no exact specification Short time for delivery (Specification and Implementation done at the same time) Personal Experience We got used to video conference and foreign languages In the end it was a lot of fun...
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.