java - org - Uso de la clase de utilidad JSON de Struts 2 incorporada
org apache struts2 json jsonexception java lang reflect invocationtargetexception (1)
Después de deserializar JSON, puede usar JSONPopulator
para rellenar las propiedades de bean de un mapa. P.ej
JSONPopulator populator = new JSONPopulator();
AccountVO vo = new AccountVO();
populator.populateObject(vo, map);
En un proyecto de Struts 2, necesitamos serializar y deserializar objetos, ya que nuestro requisito es muy simple, decidimos usar Struts 2 JSONUtil
lugar de gson
.
import org.apache.struts2.json;
String json = JSONUtil.serialize(myAccountVO);
// return: {"accountNumber":"0105069413007","amount":"1500","balance":"215000"}
Para la deserialization
, enfrentamos la class cast exception
AccountVO vo =(AccountVO) JSONUtil.deserialize(json);
//Exception
Encuentro que la deserialization
devuelve un mapa con el valor clave de las propiedades del objeto. Entonces debo hacer lo siguiente:
HashMap<String,String> map = (HashMap) JSONUtil.deserialize(string)
accountVo.setAccountNumber(map.get("accountNumber"));
....
Bueno, ¿puedo hacerlo mejor o estoy esperando demasiado de esta utilidad?