Este é um post disponível para assinantes MVPou para quem possui Créditos DevMedia. Clique aqui para saber mais!
Aumentando a produtividade no desenvolvimento Java ME com ferramentas livres - Revista Mobile Magazine 43 - Parte 3
Este artigo apresenta a conectividade entre um aplicativo Java ME e os principais servidores de dados existentes na Internet (aplicações servlet e webservice) considerando uma forma alternativa de acesso a estes serviços
[Artigo disponível no Leitor Digital DevMedia. Clique aqui para acessá-lo]
> Clique aqui para ler todos os artigos da Mobile magazine 43
O desenvolvimento de aplicações para celular utilizando o Java ME não é uma tarefa tão complicada. Porém, ainda esbarramos em um grande problema: na capacidade limitada de processamento e de armazenamento de informações. Uma alternativa viável é a utilização de servidores remotos para processar informações e armazenar dados em um repositório central, 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 ainda é bastante deficiente, principalmente no que diz respeito à velocidade. Usuários que estão acostumados com conexões rápidas podem ficar entediados pela demora no tráfego de alguns KB. Além do mais, estas conexões podem ser pouco confiáveis 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.
O MIDP possui mecanismos genéricos para acesso à rede. Na MIDP 1.0, a conexão pode ser feita apenas por HTTP, 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 HTTPS (HTTP sobre SSL), COMM (conexão serial) e Socket (permite conexão entre cliente e servidor baseado em fluxo ou pacote).
Entretanto, independente do protocolo escolhido para comunicação, o processo de codificação dessas rotinas costumam envolver procedimentos de baixo nível, como a leitura byte a byte dos dados recebidos, utilização de fluxos (classe InputStream para leitura e OutputStream para envio dos dados), além de um bom conhecimento sobre o protocolo utilizado, como HTTP (protocolo conhecido por ser stateless, ou seja, a cada comunicação o servidor “esquece” quem foi o cliente), socket TCP (já este protocolo é baseado em conexão, assim, após definir a conexão, os dados podem ser enviados/recebidos a qualquer momento), entre outros.
Para facilitar a codificação destas rotinas de comunicação, o framework Mobility Pack, disponível no ambiente de desenvolvimento Netbeans, possui recursos que agilizam o processo de codificação, onde as características de comunicação, como servidor, nome do serviço, entre outros, é feito de forma visual, em telas semelhantes a wizards.
Desta forma, será apresentada neste artigo a comunicação utilizando o protocolo HTTP e também WebService, mostrando os procedimentos de codificação tanto do aplicativo servidor, quanto o seu acesso a partir do cliente, utilizando sempre os recursos que aumentam a produtividade no desenvolvimento.
Utilizando a comunicação HTTP – Desenvolvimento de um servlet
Servlet é um programa Java que estende a funcionalidade de um servidor web, gerando conteúdo dinâmico e interagindo com os clientes. Um repositório de servidor web bastante utilizado nos dias de hoje é o Apache Tomcat, entretanto outras opções também são utilizadas pelos desenvolvedores, como o Glassfish e JBoss.
A IDE Netbeans, versão completa, possui internamente uma versão do Apache Tomcat, sendo utilizado este para o desenvolvimento do servlet que proverá informação a um aplicativo Java ME.
Para iniciar o desenvolvimento de um aplicativo web, deve-se escolher o menu File – New Project. Na tela apresentada, escolhe-se a categoria Java Web e o projeto Web Application.
"
Este é um post disponível para assinantes MVPou para quem possui Créditos DevMedia. Clique aqui para saber mais!



