Disseny i implementació de Web Services

32
Disseny i Disseny i implementació de implementació de Web Services Web Services Projecte en Enginyeria Informàtica Projecte en Enginyeria Informàtica 20 20 Crèdits Crèdits Alumne : Alumne : Ramon Nou Castell Ramon Nou Castell Director : Director : Jordi Torres i Viñals Jordi Torres i Viñals 2 – 2 - 2004 2 – 2 - 2004 entre entre PocketPC PocketPC , , PC PC i i dispositius dispositius J2ME J2ME

description

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. - PowerPoint PPT Presentation

Transcript of Disseny i implementació de Web Services

Page 1: Disseny i implementació de Web Services

Disseny i Disseny i implementació de Web implementació de Web

ServicesServices

Projecte en Enginyeria InformàticaProjecte en Enginyeria Informàtica

2020 Crèdits Crèdits

Alumne :Alumne : Ramon Nou CastellRamon Nou Castell

Director :Director : Jordi Torres i ViñalsJordi Torres i Viñals

2 – 2 - 20042 – 2 - 2004

entre entre PocketPCPocketPC, , PCPC i dispositius i dispositius J2MEJ2ME

Page 2: Disseny i implementació de Web Services
Page 3: Disseny i implementació de Web Services

ObjectiuObjectiu

Estudiar la viabilitat d’utilitzar Web Services en dispositius com PocketPC i mòbils.

Temps estimat : 572 hores.

Ramon Nou CastellRamon Nou Castell33

Page 4: Disseny i implementació de Web Services

MotivacionsMotivacions

“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 CastellRamon Nou Castell44

Page 5: Disseny i implementació de Web Services

Tecnologia UtilitzadaTecnologia Utilitzada

Web Services

Apache Axis

J2ME (i J2ME MMAPI)

kSOAP

.NET

Embedded Visual Tools

pocketSoap

Apache HTTP ServerPHP

C++

Servidor Correu

Tomcat

mySQL

Instal·lacions

Jakarta Ant

Ramon Nou CastellRamon Nou Castell55

Page 6: Disseny i implementació de Web Services

Web ServicesWeb ServicesNivell “socket”

Routers i tallafocs poden rebutjar el seu pas

Dispositius no compatibles amb “sockets”

TallafocsTallafocs

RouterRouter ServidorServidorClientClient

Ramon Nou CastellRamon Nou Castell66

Page 7: Disseny i implementació de Web Services

Web ServicesWeb ServicesProtocol HTTP, podem passar per routers i tallafocsDispositius mòbils: solament HTTPMissatge en XMLInformació codificada com a text

TallafocsTallafocs

RouterRouter ServidorServidorClientClient

Ramon Nou CastellRamon Nou Castell77

Page 8: Disseny i implementació de Web Services

Presa de contactePresa de contacte

Juny-2003

Prova PilotAvaluar la viabilitat

Definir l’abast

Conèixer la tecnologia

Escollir el següents elements

Utilització de Windows CE amb PocketPC

Ramon Nou CastellRamon Nou Castell88

Page 9: Disseny i implementació de Web Services

Presa de contactePresa de contacteSistema per enviar imatges des d’un PocketPC a un PC mitjançant WS

Façana web per a observar els resultats

Ramon Nou CastellRamon Nou Castell99

Base de

Dades

Web Services

WEB

AXIS+TOMCAT + JAVA

mySQL

PHP

.NET o EVT+pocketSOAP

Page 10: Disseny i implementació de Web Services

Presa de contacte - Presa de contacte - ConclusionsConclusionsPoca 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 CastellRamon Nou Castell1010

Page 11: Disseny i implementació de Web Services

Com arribarem a l’objectiu?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 CastellRamon Nou Castell1111

Page 12: Disseny i implementació de Web Services

Ordinador personal amb accés a la banda ampla

kSOAP oJ2ME WS

ADSL...

ISP

.NET oEVT + PocketSoap

Apache + PHP + CSS

Dispositiu WinCE

Dispositiu J2ME

GSMGPRSiMode...

WEB

Web Services Base

de Dades

Tomcat + Axis + Java

mySQL

Ramon Nou CastellRamon Nou Castell1212

Butlletí – Estructura GeneralButlletí – Estructura General

Page 13: Disseny i implementació de Web Services

Butlletí – Banda J2MEButlletí – Banda J2ME

J2MEMidlets

kSOAPLlibreria de Web Services per J2ME

J2ME WS Encara en “public draft”

Ramon Nou CastellRamon Nou Castell1313

Page 14: Disseny i implementació de Web Services

Butlletí – Banda PCButlletí – Banda PCmySQL (4.0)

Persistència del sistema

AXIS + TOMCAT + JAVACreació dels Web Services

Llistes, inserir, esborrar, modificar Plantilles Notícies Imatges Missatges

PHP + CSSClient WEB

Tota la funcionalitat directament de la base de dades

Ramon Nou CastellRamon Nou Castell1414

Page 15: Disseny i implementació de Web Services

Butlletí – PlanificacióButlletí – Planificació

Creació d’un prototipusObtenir resultats tangibles

Conèixer les dificultats ràpidament

Poder augmentar / reduir funcionalitat

Elements escollitsInserir Imatges

Inserir Notícies

Ramon Nou CastellRamon Nou Castell1515

Page 16: Disseny i implementació de Web Services

Butlletí – Inserir ImatgesButlletí – Inserir Imatges

J2MEPrimer contacte

Impossibilitat d’accedir als elements emmagatzemats al mòbil des de Java

Aplicació multimèdia amb MMAPI

Desenvolupament amb emuladors

Ramon Nou CastellRamon Nou Castell1616

Page 17: Disseny i implementació de Web Services

Butlletí – Inserir ImatgesButlletí – Inserir ImatgesBanda PC

Captura d’imatge i informació sobre ella.

Codificació Missatge SOAPImatge en Base64

Enviament

Inserció a la Base de Dades

Base de Dades

Web Services

SOAP+Base64

Ramon Nou CastellRamon Nou Castell1717

Page 18: Disseny i implementació de Web Services

Butlletí – ProblemesButlletí – Problemes

Mòbil no compatible amb la llibreria multimèdia.

AlternativesMòbil Infrarojos PocketPC WS PC

Molts dispositius

Mòbil Correu PC

Base de Dades

Web Services

SOAP+Base64

Ramon Nou CastellRamon Nou Castell1818

Page 19: Disseny i implementació de Web Services

Butlletí – Solució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

Base de Dades

E-mailProcMail

Parser EmailE-mail

Ramon Nou CastellRamon Nou Castell1919

Page 20: Disseny i implementació de Web Services

Butlletí – Inserir NotíciesButlletí – Inserir Notícies

J2METransmissió de dades i estructures ‘complexes’

Enfocat a l’eficiènciaBaix ús del Garbage collectorConstrucció dels formularis a l’inici

Desenvolupament amb emuladors

Ramon Nou CastellRamon Nou Castell2020

Page 21: Disseny i implementació de Web Services

Butlletí – Inserir NotíciesButlletí – Inserir NotíciesBanda PC

Creem la notíciaPodem demanar llistes:

Imatges Plantilles Categories

L’enviem

Base de Dades

Web Services

SOAPEstamos 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 CastellRamon Nou Castell2121

Page 22: Disseny i implementació de Web Services

Butlletí – Proves PrototipusButlletí – Proves PrototipusCodificació mòbil PC

OK!ISO-LATIN-1 a UTF-8

Codificació PC mòbilNo OK!UTF-8 no automàticament a ISO-LATIN-1

Classe extra UTF2ISO:Transformació subconjunt UTF-8 a ISO-LATIN-1

Ramon Nou CastellRamon Nou Castell2222

Page 23: Disseny i implementació de Web Services

Missatgeria entre usuaris

Web ServicesLlistes d’usuaris, missatges, operacions d’esborrat i modificació...

Client WEBFinalitzacióMillora seguretat Millora aspecte gràfic

Ramon Nou CastellRamon Nou Castell2323

Butlletí – Finalització sistemaButlletí – Finalització sistema

Page 24: Disseny i implementació de Web Services

Instal·lació senzilla, ordinadors amb pocs recursos

Windowspocs ‘Clicks’ , cinc minutsInici serveis automàticamentDesinstal·lació

LinuxManual, però amb instruccions acurades

Ramon Nou CastellRamon Nou Castell2424

Butlletí – Finalització sistemaButlletí – Finalització sistema

Page 25: Disseny i implementació de Web Services

Butlletí – Client .NETButlletí – Client .NET

Funcionalitat Inserir Notícies

Inserir Imatges

Detectats problemes d’interoperativitat.

Canviar Vector de X per X[ ]

Ramon Nou CastellRamon Nou Castell2525

Page 26: Disseny i implementació de Web Services

Butlletí – Client WEBButlletí – 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 CastellRamon Nou Castell2626

Page 27: Disseny i implementació de Web Services
Page 28: Disseny i implementació de Web Services
Page 29: Disseny i implementació de Web Services
Page 30: Disseny i implementació de Web Services

No hi ha subtítol!!!

Page 31: Disseny i implementació de Web Services

FuturFutur

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 CastellRamon Nou Castell3131

Page 32: Disseny i implementació de Web Services

Base de Dades

E-mail

ProcMail

E-mail

Web Services

Demanem llista

Rebem llistaEnvíem Notícia

Ramon Nou CastellRamon Nou Castell3232