320 likes | 423 Views
Disseny i implementació de Web Services. entre PocketPC , PC i dispositius J2ME. Projecte en Enginyeria Informàtica 20 Crèdits Alumne : Ramon Nou Castell Director : Jordi Torres i Viñals 2 – 2 - 2004. 3. Objectiu.
E N D
Disseny i implementació de Web Services entre PocketPC, PC i dispositius J2ME Projecte en Enginyeria Informàtica 20 Crèdits Alumne :Ramon Nou Castell Director :Jordi Torres i Viñals 2 – 2 - 2004
3 Objectiu • Estudiar la viabilitat d’utilitzar Web Services en dispositius com PocketPC i mòbils. • Temps estimat : 572 hores. Ramon Nou Castell
4 Motivacions • “Boom” PocketPC i Mòbils. • Aprofitar el “servidor a casa”. • Conèixer els Web Services. • Conèixer la tecnologia dels dispositius portàtils. • Representa un repte. Ramon Nou Castell
5 Tecnologia Utilitzada • Web Services • Apache Axis • J2ME (i J2ME MMAPI) • kSOAP • .NET • Embedded Visual Tools • pocketSoap • Apache HTTP Server • PHP • C++ • Servidor Correu • Tomcat • mySQL • Instal·lacions • Jakarta Ant Ramon Nou Castell
6 Web Services • Nivell “socket” • Routers i tallafocs poden rebutjar el seu pas • Dispositius no compatibles amb “sockets” Tallafocs Router Client Servidor Ramon Nou Castell
7 Web Services • Protocol HTTP, podem passar per routers i tallafocs • Dispositius mòbils: solament HTTP • Missatge en XML • Informació codificada com a text Tallafocs Router Client Servidor Ramon Nou Castell
8 Presa de contacte • Juny-2003 • Prova Pilot • Avaluar la viabilitat • Definir l’abast • Conèixer la tecnologia • Escollir el següents elements • Utilització de Windows CE amb PocketPC Ramon Nou Castell
9 Presa de contacte • Sistema per enviar imatges des d’un PocketPC a un PC mitjançant WS • Façana web per a observar els resultats .NET o EVT+pocketSOAP AXIS+TOMCAT + JAVA mySQL Web Services Base de Dades WEB PHP Ramon Nou Castell
10 Presa de contacte - Conclusions • Poca dificultat • Visual Studio .NET – Ràpida construcció • EVT+pocketSOAP – Construcció lenta • Centrar el projecte en la tecnologia J2ME • Sistema final semblant al creat Ramon Nou Castell
11 Com arribarem a l’objectiu? • Creació d’un sistema que permeti inserir notícies (amb imatges) mitjançant un dispositiu mòbil. • El sistema té com a objectiu secundari ser usable. Ramon Nou Castell
12 Butlletí – Estructura General Tomcat + Axis + Java mySQL kSOAP o J2ME WS Dispositiu J2ME Web Services Base de Dades ADSL... GSM GPRS iMode... WEB Dispositiu WinCE Apache + PHP + CSS ISP .NET o EVT + PocketSoap Ordinador personal amb accés a la banda ampla Ramon Nou Castell
13 Butlletí – Banda J2ME • J2ME • Midlets • kSOAP • Llibreria de Web Services per J2ME • J2ME WS • Encara en “public draft” Ramon Nou Castell
14 Butlletí – Banda PC • mySQL (4.0) • Persistència del sistema • AXIS + TOMCAT + JAVA • Creació dels Web Services • Llistes, inserir, esborrar, modificar • Plantilles • Notícies • Imatges • Missatges • PHP + CSS • Client WEB • Tota la funcionalitat directament de la base de dades Ramon Nou Castell
15 Butlletí – Planificació • Creació d’un prototipus • Obtenir resultats tangibles • Conèixer les dificultats ràpidament • Poder augmentar / reduir funcionalitat • Elements escollits • Inserir Imatges • Inserir Notícies Ramon Nou Castell
16 Butlletí – Inserir Imatges • J2ME • Primer contacte • Impossibilitat d’accedir als elements emmagatzemats al mòbil des de Java • Aplicació multimèdia amb MMAPI • Desenvolupament amb emuladors Ramon Nou Castell
17 Butlletí – Inserir Imatges • Banda PC • Captura d’imatge i informació sobre ella. • Codificació Missatge SOAP • Imatge en Base64 • Enviament • Inserció a la Base de Dades Base de Dades Web Services SOAP+Base64 Ramon Nou Castell
18 Butlletí – Problemes • Mòbil no compatible amb la llibreria multimèdia. • Alternatives • Mòbil Infrarojos PocketPC WS PC • Molts dispositius • Mòbil Correu PC Base de Dades Web Services SOAP+Base64 Ramon Nou Castell
E-mail E-mail 19 Butlletí – Solució • Enviar imatge per correu electrònic • Procés que analitzi el correu i realitzi la inserció • Solució temporal • Processat de correu utilitzant la RFC • Modificació lleu per a acceptar missatges MMS sense assumpte • Depenem de molts factors externs • Podem trigar molt de temps en rebre el correu! • No sabem l’estat ProcMail Parser Email Base de Dades Ramon Nou Castell
20 Butlletí – Inserir Notícies • J2ME • Transmissió de dades i estructures ‘complexes’ • Enfocat a l’eficiència • Baix ús del Garbage collector • Construcció dels formularis a l’inici • Desenvolupament amb emuladors Ramon Nou Castell
21 Butlletí – Inserir Notícies • Banda PC • Creem la notícia • Podem demanar llistes: • Imatges • Plantilles • Categories • L’enviem Base de Dades Web Services SOAP Estamos escribiendo la notícia para la presentación del Proyecto.... Aquí solo se vera un texto minusculo que se esta escribiendo poco a poco pero representa con fidelidadd lo que puede ser la realidad. Esto estara lleno de galtas asi que no lo leais ;)gfhfghgfhgfhfhfhfhfghfghgfhgfhfgbvcnvcytbrykfj, djfc,acfdkl clñfdk´cñf ñldkfc,ásclñf. clña Ramon Nou Castell
22 Butlletí – Proves Prototipus • Codificació mòbil PC • OK! • ISO-LATIN-1 a UTF-8 • Codificació PC mòbil • No OK! • UTF-8 no automàticament a ISO-LATIN-1 • Classe extra UTF2ISO: • Transformació subconjunt UTF-8 a ISO-LATIN-1 Ramon Nou Castell
23 Butlletí – Finalització sistema • Missatgeria entre usuaris • Web Services • Llistes d’usuaris, missatges, operacions d’esborrat i modificació... • Client WEB • Finalització • Millora seguretat • Millora aspecte gràfic Ramon Nou Castell
24 Butlletí – Finalització sistema Instal·lació senzilla, ordinadors amb pocs recursos • Windows • pocs ‘Clicks’ , cinc minuts • Inici serveis automàticament • Desinstal·lació • Linux • Manual, però amb instruccions acurades Ramon Nou Castell
25 Butlletí – Client .NET • Funcionalitat • Inserir Notícies • Inserir Imatges • Detectats problemes d’interoperativitat. • Canviar Vector de X per X[ ] Ramon Nou Castell
26 Butlletí – Client WEB • Tota la funcionalitat • Dinàmica amb PHP • Eina per a provar el sistema • CSS (Cascade Style Sheet) • Transformar l’aspecte gràfic modificant un fitxer • Classes definides per gairebé tots els elements • Capacitat de transformació de la WEB • Depèn del dissenyador Ramon Nou Castell
31 Futur • Continuació del PFC per l’alumne Juan Gonzalez • Creació d’un moblog • Ampliar sistema • Client WEB creat mitjançant Apache Cocoon accedint a través dels Web Service Ramon Nou Castell
E-mail E-mail 32 ProcMail Base de Dades Rebem llista Envíem Notícia Demanem llista Web Services Ramon Nou Castell