GWT – JavascriptObject overlay types Map

abril 16, 2012

Para facilitar el uso de servicios REST utilzamos JavascriptObject overlay types, los cuales nos permiten obtener un objeto a partir de una cadena JSON. Los overlay types sólo permiten ciertos tipos de datos como parámetros o valores de retorno. Entonces, para obtener un Map a partir de una cadena JSON como la siguiente, podemos utilizar la clase JSOHelper del framewrok SmartGwt:

{“id”:”menu1″,”opciones”:{“key1″:”value1″,”key2″:”value2″,”key3″:”value3”}}

tendríamos que hacerlo de la siguiente manera:

public class Menu extends JavaScriptObject{

public final native String getId()/*-{return this.id}-*/;

public final native JavaScriptObject getNativeOpciones()/*-{return this.opciones}-*/;

public final LinkedHashMap<String,String> getOpciones(){

LinkedHashMap<String,String> linkedMap=new LinkedHashMap<String,String>();

Map map=JSOHelper.convertToMap(getNativeOpciones());

Iterator iterator=map.entrySet().iterator();

while(iterator.hasNext()){

Map.Entry item=(Map.Entry)iterator.next();

linkedMap.put((String)item.getKey(),(String)item.getValue());

}

return linkedMap;

}

}
Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: