TRABALHO FINAL DE CURSO - INESC-ID
TRABALHO FINAL DE CURSO - INESC-ID
TRABALHO FINAL DE CURSO - INESC-ID
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
MobileREVS 15-10-2006<br />
Figura 10 - Estrutura interna dos componentes do MobileREVS<br />
4.4. Protocolo<br />
Conforme foi referido anteriormente, o Módulo Eleitor do sistema MobileREVS<br />
não pode comunicar directamente com os servidores REVS, dada a inexistência de<br />
comunicação via RMI nas implementações de J2ME. Esta restrição implicou a criação<br />
de proxies nos servidores web, funcionando como intermediários da comunicação entre<br />
o M<strong>ID</strong>let e os servidores REVS, de acordo com a Figura 10.<br />
Desta forma, manteve-se o protocolo original do REVS, descrito na Secção<br />
3.1.2, com as respectivas adaptações para a nova arquitectura, assegurando-se a<br />
manutenção das características e propriedades originais (ver Figura 11). A comunicação<br />
entre o telemóvel e os servidores passa, então, a ser mediada pelos servlets, que<br />
permitem traduzir os pedidos HTTP/HTTPS em pedidos RMI equivalentes para os<br />
servidores do REVS. Ao mesmo tempo, os servlets permitem adaptar algumas das<br />
estruturas de dados de J2ME para J2SE, e vice-versa, dadas as limitações existentes da<br />
máquina virtual para telemóveis (e.g. o J2ME não implementa estruturas de dados do<br />
tipo List).<br />
A serialização de objectos para transmissão na rede é definida pela interface<br />
ISerialize. Através desta interface, todos os objectos de domínio implementam<br />
dois métodos de serialização: um método que transforma o objecto em questão num<br />
byte array para envio, e outro que realiza a operação inversa, ou seja, a transformação<br />
de um byte array no próprio objecto.<br />
Luis Costa, Nuno Santos 39