Desenvolvimento RIA ( Primeiro post de 2007 )

fevereiro 18th, 2007

Estamos começando mais um ano com muitos projetos e idéias para serem desenvolvidas, este ano nosso foco é desenvolvimento RIA, aplicações que além de serem bonitas visualmente, vão proporcionar novas experiências e usabilidade aos usuários finais.

Uma união que tem dado certo é Ruby on Rails, WebOrb e Flex. Com estes três seres que não são de outro planeta pois já são realidades é possivél ter um desenvolvimento ágil e profissional, com uma curva de aprendizado extremamente baixa.

Agora imagine ter todo o poder do Ruby on Rails para cuidar das suas regras de négocios do lado do servidor, em seguida entra uma nova camada ORB que irá permitir que os serviços e classes estejam disponí­veis para o front-end de suas aplicações, assim levando todo o poder de uso de uma aplicação desktop para sua aplicação web. É isso que quero proporcionar neste ano de 2007, muitas novidades vem por ai, e uma delas é uma sériee de artigos sobre desenvolvimento RIA unindo estes três tecnologias.

Já neste primeiro post quero começar a fazer uma breve introdução ao WebOrb.

WebOrb é uma tecnologia que permite a conectividade entre Ruby on Rails e aplicações desenvolvidas em Flex e tecnologias que usam Flash Remoting. O WebOrb para Rails é instalado como um plugin na sua aplicação e expõeas classes para serviços remotos, o produto fornece um completo acesso aos protocolos implementados pela Adobe, AMF0 e até mesmo o AMF3.
Os projetos desenvolvidos em Flex SDK ou em Flex Builder podem ser configurados facilmente atravez de DataServices ou RemoteObject.Então imagine que você tenha um serviço disponível em sua aplicação rails chamado ListaUsuariosService.

# Serviço disponível

# Classe ListaUsuariosServicerequire ‘weborb/context’

require ‘rbconfig’

class ListaUsuariosService

def getListagem

@usuarios = Usuario.find(:all)

return @usuarios

end

end
Esta classe estará disponí­vel para sua aplicação Flex realizar a comunicação via ORB logo depois de configurada em seu remoting-config.

ListaUsuariosService Agora é hora de instanciar o serviços em sua aplicação flex através de um RemoteObject.Algo como:

UsuariosController = new RemoteObject();
UsuariosController.destination = “ListaUsuariosServices”;

Depois de instanciado a destinação da classe, você já pode realizar a comunicação direta com os méodos disponí­veis na classe ListaUsuariosService.

UsuariosController.getListagem();
UsuariosController.getListagem.addEventListener(“result”,
resultadoDaListagem);
UsuariosController.addEventListener(“fault”,onFault);

Se não houve nenhum problema é adicionado um evento que recebe o retorno da consulta solicitada, então você pode chamar diretamente uma função que irá trabalhar com os dados, ex:

private function resultadoDaListagem(event:ResultEvent) :void {

if (event.result.usuarios!= null &&

event.result.usuarios != “”){

Alert.show(“Olá ” +

event.result.usuarios.usuario.nome);

}

}
Agora se houve algum tipo de erro então é enviado a uma outra função, ex:

public static function onFault(event:FaultEvent):void{

Alert.show(“Houve um erro ao tentar

processar a listagem de

usuários cadastrados..”);

}
Bom por enquanto é isso, nas próximas vamos praticar um pouco.

Grande abraço.

  1. No comments yet.
  1. No trackbacks yet.