Grails Flex - retorno de mais de um objeto
23/05/2011 00:00
0
Estou desenvolvendo uma aplicação com back-end em grails e front-end flash, para isso estou utilizando o Grails Flex Plugin http://grails.org/plugin/flex

Estou seguindo tutorial http://grails-plugins.github.com/grails-flex/docs/manual/index.html e está indo tudo certo, porém não sei como retornar mais de um valor para utilizar no arquivo.mxml, por exemplo:

No controller normal eu utilizaria um map para retornar os valores
[ contato:Contato.get(1),texto:'texto de retorno' ]

mas não sei como fazer neste caso que utilizo o service.

Para retornar um objeto faço assim, conforme tutorial:

// no service tenho o método

Contato carregar(Integer id) {
Contato.get(id)
}

// e no mxml recupero assim o contato

public function eventRunTrimester(e:ResultEvent):void{
contato = e.result as Contato;
Alert.show(contato.nome);
}

funciona tranquilo, mas nao sei como fazer pra retornar mais que um objeto, tentei igual o controller mas nao tive sucesso.

Alguem sabe como fazer?

Abraços
Tags: Tópicos avançados


0
Olá Carlin,

Cara me passe alguma informações extras:
No exemplo que você mostrou, você recupera o objeto pelo ID do mesmo. No caso de retornar mais de um objeto, qual será a regra de busca? Buscará todos? Buscará todos cujo nome começe com uma string fornecida?

Em qual controle você exibe o objeto retornado? Em qual controle você exibirá a lista de objetos que deseja retornar ?


Abraços, e bom trabalho!
23/05/2011 00:00


0
Por exemplo assim:

Eu tenho uma classe Equipe e uma classe DecProducao (decisoes de producao) que pertence a classe Equipe:


// no service tenho o método

DecProducao carregar(Integer id) {
def equipe = Equipe.get(id)
def decPro = DecProducao.findByEquipe(equipe)
decPro
}


Aqui ele esta retornando o objeto da classe DecProducao, mas eu gostaria de retornar a equipe tambem, por exemplo. Eu sei que a equipe está dentro da DecProducao, e se fosse pra usar no .gsp eu usaria ${decPro.equipe}, mas no .mxml eu nao consigo, porque meu actionscript tambem nao tem equipe, eu tentei colocar mas sem sucesso.

Assim está o ActionScript


package {

[Bindable]
[RemoteClass(alias='sistema.DecProducao')]
public class DecProducao {
public function DecProducao() {
// constructor
}

public var id:int;
public var producao:String;
public var trabalhadores:String;
}
}


Abraço
25/05/2011 00:00


0
Consegui fazer retornando uma lista e tratando no mxml:

// no service
List retornarValores() {
def lst = []
lst << 'valor1'
lst << 'valor2'
lst << 'valor3'
lst
}

// no mxml
public function eventSetup(e&#58;ResultEvent)&#58;void{
Alert.show('valor 1&#58; '+e.result[0])
Alert.show('valor 2&#58; '+e.result[1])
Alert.show('valor 3&#58; '+e.result[2])
}


Assim funcionou..

valeu
31/05/2011 00:00



Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails com a Formação itexto!

Newsletter Semana Groovy

Assinar

Envie seu link!


Livro de Grails


/dev/All

Os melhores blogs de TI (e em português) em um único lugar!

 
Creative Commons
RSS Grails Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.
Ver: 4.14.0
itexto