/** * * @param soapXml 请求结果string * @param c 要转换成的java对象 * @param <T> * @return */ public static <T> T soapXmlToBean(String soapXml,Class<T> c){ Iterator<SOAPElement> iterator = null; T t = null; try { //javax.xml.soap类MessageFactory MessageFactory msgFactory = MessageFactory.newInstance(); //创建一个soapmessage对象 SOAPMessage reqMsg = msgFactory.createMessage(new MimeHeaders(), new ByteArrayInputStream(soapXml.getBytes("UTF-8"))); reqMsg.saveChanges(); //取出soapBoby对象 SOAPBody body = reqMsg.getSOAPBody(); 遍历子节点 iterator = body.getChildElements(); }catch (Exception e){ e.printStackTrace(); } while (iterator.hasNext()) { SOAPElement element = iterator.next(); logger.info("节点名称---:"+element.getNodeName()); if("multiRef".equals(element.getNodeName())){ Iterator<SOAPElement> it = element.getChildElements(); SOAPElement el = null; while (it.hasNext()) { el = it.next(); //取到content子节点的值 if ("content".equals(el.getNodeName())) { logger.info("子节点值---:"+el.getValue()); //这里是调用工具来将content中的xml转换成java对象 t = XmlConverterUtil.analyzeXmlToBean(el.getValue(),c); break; } } break; } } return t; }
分类:
JAVA
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· .NET Core 中如何实现缓存的预热?
· 三行代码完成国际化适配,妙~啊~
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
2021-04-07 【linux】【tomcat】linux下定时重启tomcat 【CentOS 6.4】【CentOS 7.6】