/* ================================================================== * Created [2009-4-27 下午11:32:55] by Jon.King * ================================================================== * TSS * ================================================================== * mailTo:jinpujun@hotmail.com * Copyright (c) Jon.King, 2009-2012 * ================================================================== */ package com.jinhe.tss.core.web.dispaly.xform; import org.dom4j.Document; import org.dom4j.Element; import com.jinhe.tss.core.util.BeanUtil; import com.jinhe.tss.core.util.XMLDocUtil; /** * <p> * XFormDecoder.java * </p> * <p> * XForm数据解码 * </p> * */ public class XFormDecoder { private static final String XFORM_DATA_ROW_NODE_XPATH = "/data/row"; /** * 将XML格式的数据设置到新创建的实体中 * * @param dataXml * @param entityClass * @return * @throws Exception */ public static Object decode(String dataXml, Class<?> entityClass) { Object bean = BeanUtil.newInstance(entityClass); if (dataXml != null) { Document doc = XMLDocUtil.dataXml2Doc(dataXml); Element dataNode = (Element) doc.selectSingleNode(XFORM_DATA_ROW_NODE_XPATH); BeanUtil.setDataToBean(bean, XMLDocUtil.dataNode2Map(dataNode)); } return bean; } }