tdc 2012 trilha – android university

Post on 06-Jul-2015

182 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Globalcode – Open4education

Trilha – Android UniversityInael Rodrigues de Oliveira Neto

Último período em Engenharia de Software UFGAluno Especial no Mestrado em Ciência da Computação UFG

Programador Java, Groovy, C# .Net

Globalcode – Open4education

Integração de Aplicação Web com Mobile

Globalcode – Open4education

Agenda

● Introdução● EAI● SOA● Web Service● REST

● RESTFul● Integrando Android com Serviços

Globalcode – Open4education

Introdução

● No ínicio a informação era processada em sistemas centralizados.

● A demanda de integração era em ambientes mais homogênos.

● Com as novas plataformas e tecnologias o ambiente tornou-se heterogêneo

● Sistemas legados acabaram se tornando ilhas de informação.

● Nesse cenário complexo, a web é a ponte que conecta as ilhas.

Globalcode – Open4education

Introdução

• Necessidade de Integração• Software de diferentes fabricantes;• Software desenvolvido com tecnologias diferentes;• Software desenvolvido com necessidades governamentais ou legais.

Globalcode – Open4education

Enterprise Application Integration(EAI)

São procedimentos e ferramentas que viabiliza interação entre sistemas heterogêneos

● Métodos de Integração○ Integração Ponto a Ponto (File Transfer)

■ troca de arquivos geralmente no formato TXT ou CSV○ Integrações via Banco de Dados (Shared Database)○ Integrações Multipontos via Middleware (Messaging e

remote procedure invocation).○ Integração Orientada a Mensagens(Messaging)

Globalcode – Open4education

Service Oriented Architecture(SOA)

É estilo arquitetural que disponibiliza funcionalidades na forma de serviços

● Geralmente são conectados através de um barramento de serviço que disponibiliza interfaces

Globalcode – Open4education

Service Oriented Architecture(SOA)

Globalcode – Open4education

Service Oriented Architecture(SOA)

Globalcode – Open4education

Service Oriented Architecture(SOA)

Globalcode – Open4education

Service Oriented Architecture(SOA)

Normalmente, a comunicação entre o sistema cliente e aquele que disponibiliza o serviço é realizada através de web services.

Globalcode – Open4education

Web Service

● Interoperabilidade entre aplicações rodando em diferentes plataformas.

● Basea-se em um protocolo que encapsula as (SOAP – Simple Object Access Protocol)

● Basea-se em uma linguagem que descreve as interfaces dos serviços, conhecida como WSDL (Web Services Description Language).

Globalcode – Open4education

Web Service

WSDL

Globalcode – Open4education

Web Service

Globalcode – Open4education

Representational State Transfer(REST)

● Criado em 2000 por um cientista da computação norte-americano e um dos principais criadores da especificação HTTP, Roy Fielding.

● REST surgiu a partir dacombinação de outros estilos arquiteturais.

Globalcode – Open4education

REST - RESTful

● WebServices que seguem os princípios REST são freqüentemente chamados de RESTful.

● As principais características:○ Separação de responsabilidades entre as camadas

cliente e servidor;○ Comunicações independentes (stateless);○ Uso de cache (para eliminar algumas interações

desnecessárias entre cliente e servidor);○ Utilização de uma interface uniforme entre os

componentes●

Globalcode – Open4education

REST - RESTful

Globalcode – Open4education

REST - RESTful

Globalcode – Open4education

Integrando Android com Serviços

● A Integração pode ser realizada por ○ Sockets -

■ java.net.Socket○ HTTP -

■ Simples: java.net.HttpUrlConnection■ Complexa: HttpClient Jakarta Commons(http://hc.apach.org)

● Ex. Autenticar em servidor seguro.○ Web Services

■ org.ksoap2.SoapEnvelop■ org.ksoap2.serialization.SoapObject■ org.ksoap2.serialization.SoapSerializationEnvelope■ org.ksoap2.transport.HttpTransportSE

Globalcode – Open4education

Integrando Android com Serviços: WebService

public class WSConnection { private static final String URL = "http://www.maniezo.com.br/webservice/soap-server.php"; private static final String OPERATION = "traz_cep"; private static final String NAMESPACE = "http://www.maniezo.com.br/soap-server.php"; private static final String USERNAME = "ramonrabello"; private static final String PASSWORD = "trip22"; public static Object pesquisarCEP(String cep) { SoapObject request = new SoapObject("http://localhost:8080/soap-server.php","traz_cep"); SoapSerializationEnvelope envelope = new SoapSerializationEnvelope( SoapEnvelope.VER11); envelope.setOutputSoapObject(request); StringBuffer params = new StringBuffer(); params.append(cep.concat("#")); params.append(USERNAME.concat("#")); params.append(PASSWORD.concat("#")); request.addProperty("dados_cep", params.toString()); HttpTransportSE httpTransport = new HttpTransportSE(URL); try { httpTransport.call("", envelope); String response = (String) envelope.getResponse()...

Globalcode – Open4education

Integrando Android com Serviços: HTTP

Globalcode – Open4education

Android Developershttp://developer.android.com

Globalcode – Open4education

Obrigado

Globalcode – Open4education

Bibliografia

top related