Atenção: esse artigo tem um vídeo complementar. Clique e assista!

De que se trata o artigo:

Este artigo apresenta o desenvolvimento de aplicações Java ME, mais especificamente para aparelhos celulares (CLDC e MIDP) que necessitam acessar dados de serviços externos a partir de WebServices. Nesse trabalho é apresentado o acesso direto a um WebService e seu acesso a partir de servidores de Proxy. Por fim, é comparado o número de bytes trafegados entre os dois tipos de acesso


Para que serve:

Este artigo pode ser utilizado por programadores que necessitam recuperar dados já disponibilizados via WebService, sendo o acesso a este, considerado por muitos profissionais, um grande problema para a plataforma móvel, já que os WebServices necessitam de um grande número de bytes trafegados pela rede, e na plataforma móvel, o acesso aos dados é tarifado na maioria das vezes pelo número de bytes.


Em que situação o tema é útil:

Este artigo é útil para programadores que precisam integrar dados entre a plataforma móvel (Java ME) e servidores remotos, a partir de WebServices, sendo apresentadas para isto duas alternativas: acesso direto aos WebService e o acesso ao WebService via Proxy.

Autores: Robison Cris Brito e Ricardo Ogliari

O desenvolvimento de aplicações para celular utilizando o Java ME não é uma tarefa tão complicada. A plataforma possui suporte a várias ferramentas para o desenvolvimento visual de aplicativos (clicar e arrastar) como por exemplo o Mobility Pack disponível no Netbeans, frameworks que facilitam a persistência de dados no RMS, como Floggy, outros que auxiliam na comunicação bluetooth, destacando-se o Marge, e até conjuntos de classes para desenvolvimento de gráficos e relatórios nas pequenas telas dos dispositivos móveis, como meChart e meReport.

Porém, ainda esbarramos em um grande problema: na capacidade limitada de processamento e de armazenamento de informações existente hoje nos pequenos aparelhos. Vale lembrar que o grande mercado do Java ME são os aparelhos limitados, muitos deles entregues de graça pelas operadoras, outros que custam algumas dezenas de reais, e para estes aparelhos, toda economia de processamento, armazenamento e otimização é bem vinda.

Uma alternativa viável para “aliviar” os pequenos dispositivos é a utilização de servidores remotos para processar informações e armazenar dados em repositórios centrais, facilitando o acesso a informações que poderão ser feitos por outros mecanismos.

Celulares e outros dispositivos móveis costumam fazer acesso a dados remotamente utilizando conexões OTA (Over the Air). Esta tecnologia é bastante deficiente ainda, principalmente no que diz respeito à velocidade de transmissão e ao custo dos acessos, que ainda, na maioria das vezes, é tarifada por byte trafegado.

Assim, usuários que estão acostumados com conexões rápidas e baratas em seus desktops podem ficar entediados pela demora no tráfego de alguns KB. Além do mais, estas conexões podem ser pouco confiáveis, caras e intermitentes.

Entretanto, as empresas operadoras de telefonia móvel no Brasil estão em constante evolução, e já disponibilizam serviços em que é possível trafegar cada vez mais informações em conexões ininterruptas, pagando cada vez menos por este serviço, e ainda oferecendo uma maior abrangência territorial no país, mas ainda falta muito para a comunicação de dados móvel poder ser comparada com a comunicação de dados fixas, existente nos computadores e notebooks.

O MIDP possui mecanismos genéricos para acesso à rede. Na MIDP 1.0, a conexão podia ser feita apenas por HTTP, através da classe HttpConnection (pacote javax.microedition.io) - outros protocolos poderiam ser utilizados de acordo com cada fabricante de celular. Já no MIDP 2.0, existem outras maneiras de estabelecer conexão, incluindo o HttpsConnection (HTTP sobre SSL), CommConnection (conexão serial), SocketConnection (permite conexão a um servidor socket), DatagramConnection (comunicação usando pacotes UDP), além das comunicações de envios de mensagem, usando o SMS e MMS.

Estas comunicações possuem como característica a utilização da rede das operadoras para que as mesmas possam acontecer (ler Nota DevMan 1).

Nota DevMan 1. Dica

Alguns aparelhos celulares mais modernos permitem utilizar os protocolos http, socket e datagram sem passar pela rede da operadora. Para isso, nas configurações do aparelho é necessário informar o nome de um Access Point Wi-FI, para que no momento da comunicação o acesso a rede seja feita por uma rede sem fio. Entretanto, a limitação está na área de abrangência desses Access Point, que costumam se limitar a escritórios e empresas. Já com o sistema em campo, nas ruas de uma cidade por exemplo, dificilmente pode-se escapar do envio e recepção de dados a partir da rede das operadoras.

Neste contexto, nesse artigo será apresentada a conexão de um aplicativo JavaME com um WebService da maneira tradicional, sendo na sequência comparada com a conexão utilizando servidor de proxy.

...
Quer ler esse conteúdo completo? Tenha acesso completo