Singnature com DWR

Uma funcionalidade bem interessante do DWR é a Signature. Uma maneira simples de se trabalhar com Coleções. Signatures no DWR utiliza-se de reflexão para descobrir os tipos que ele deve processar na conversão.

É uma forma que o DWR encontrou para resolver alguns problemas de objetos armazenados em uma coleção. Imagine o método a seguir:

public void exampleSign(List attribute){ ...

...

}

Você não tem a mínima idéia do que pode vir no List, pode ser uma coleção de Beans, String, Integer etc. Com Singnatures você poderá garantir que seu método vai receber vários tipos já pré-definidos sem precisar alterar a assinatura do método e sem ter que ter um único tipo. Vejamos um exemplo:

public void exampleSign(List attribute){ ...

...

}

Esse é o seu método, e agora você quer que ele receba uma Lista de Beans de Usuários.

No seu dwr.xml fora da tag < allow >< / allow> você irá criar o trecho abaixo:

< signatures >   < ! - - [ CDATA [

import java.util.List;

import com.jm.dwr.FacadeAjaxSession;

import com.jm.bean.BeanUsuario;

FacadeAjaxSession.exampleSign(List < BeanUsuario >);

] ] - - >
< / signatures >

Na primeira linha você define que o trecho a seguir é uma Signature, caso você vá utilizar algumas classes que não são “default” você deverá fazer o import da mesma. E claro o import da classe que você deseja alterar o método. Na linha 06 você “diz” como o método deverá se comportar.

Agora seu método está recebendo um List de Beans Usuários. Vamos ver outro exemplo:

Queremos agora que o método receba um List de Strings:

< signatures >   < ! - - [ CDATA [

import java.util.List;

import com.jm.dwr.FacadeAjaxSession;

FacadeAjaxSession.exampleSign(List < String >);

] ] - - >
< / signatures >

Que tal um List de Integer:

< signatures >   < ! - - [ CDATA [

import java.util.List;

import com.jm.dwr.FacadeAjaxSession;

import com.jm.bean.BeanUsuario;

FacadeAjaxSession.exampleSign(List < Integer >);

] ] - - >
< / signatures >

É bem simples de fazer e configurar. É uma opção interessante para quem não quer ficar preso a assinatura do método e ter que fazer uma para cada tipo de collections.

Claro existem várias outras formas e maneiras de se utilizar a signatures do DWR, fica a seu cargo escolher onde ela melhor se aplica. Caso queria saber mais sobre signatures acesse o link abaixo:

http://getahead.org/dwr/server/dwrxml/signatures

Abraços.

4.126 Comments on “Singnature com DWR

  1. This is the perfect site for everyone who really wants to find
    out about this topic. You understand a whole lot its almost tough to argue with you (not that I really would want to…HaHa).
    You definitely put a fresh spin on a topic that has been written about for ages.
    Excellent stuff, just excellent!

  2. naturally like your website but you need to test the spelling on quite a few of your posts.

    A number of them are rife with spelling issues and I to find it
    very bothersome to inform the reality nevertheless I will surely come
    again again.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

*

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.