package com.huawei.common;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import org.apache.log4j.Logger;
import org.kxml2.kdom.Element;
import com.huawei.bo.EsbRequest;
import com.huawei.bo.MsgBO;
public class XMLController
{
protected static Logger log = Logger.getLogger(XMLController.class); //日志
/**
* 把xml字符串转换为对象
* @param input
* @param request
*/
public void pareseXmlToBO(String input,EsbRequest request) throws Exception
{
XMLParserHelper helper = new XMLParserHelper();
Element root = helper.parserXML(input);
request.setOid(helper.getText(root,"oid"));
request.setIsLongFlow(helper.getText(root,"isLongFlow"));
//root.getElement(null, "businessLog");
//exlog = businesslog.getElement(null,"exceptionMsg");
//msgList = root.getElement(null, "msgList");
Element businesslog = helper.getElement(root,null,"businessLog");;
Element exlog = helper.getElement(businesslog,null,"exceptionMsg");
Element msgList = helper.getElement(root,null,"msgList");
request.setBusinessId(helper.getText(businesslog,"businessId"));
request.setTransactionId(helper.getText(businesslog,"transactionId"));
request.setModuleId(helper.getText(businesslog,"moduleId"));
request.setServiceNumber(helper.getText(businesslog,"serviceNumber"));
request.setOperator(helper.getText(businesslog,"operator"));
request.setAreaId(helper.getText(businesslog,"areaId"));
request.setDepartmentId(helper.getText(businesslog,"departmentId"));
request.setRemoteHost(helper.getText(businesslog,"remoteHost"));
request.setStartTime(helper.getText(businesslog,"startTime"));
request.setEndTime(helper.getText(businesslog,"endTime"));
request.setEsb_version(helper.getText(businesslog,"esb_version"));
request.setStatus(helper.getText(exlog,"status"));
request.setErrCode(helper.getText(exlog,"errCode"));
request.setErrInfo(helper.getText(exlog,"errInfo"));
request.setErrType(helper.getText(exlog,"errType"));
//获取报文个数
int msgCount = (msgList == null)?0:msgList.getChildCount();
//读取每条报文
for (int i = 0; i < msgCount; i++)
{
Element child = msgList.getElement(i);
if (child == null) continue;
MsgBO bo = new MsgBO();
bo.setSender(helper.getText(child,"sender"));
bo.setRecevier(helper.getText(child,"recevier"));
bo.setMsgType(helper.getText(child,"msgType"));
bo.setMsg(helper.getText(child,"inXML"));
/////////////////////////////////////////////////
File file=new File("D:\\var\\mqsi\\config\\text"+i+"."+"xml");
FileWriter fw = new FileWriter(file);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(helper.getText(child,"inXML"));
bw.close();
request.addMsgBO(bo);
}
log.debug("EsbRequest pareseXmlToBO:" + request.toString());
}
}
分享到:
相关推荐
xml转json
- XMLController.java:使用JDOM操作XML文件,实现FTP服务器信息的保存和读取,以及搜索功能。 - Constants.java:存储运行时使用的常量,initcontent()函数进行初始化。 - CustomizedController.java:包含...
- 关键文件包括MainFrame.java(主程序类,启动系统并设置界面)、FtpFrame_AboutBox.java(显示关于对话框)、Tools.java(文件操作辅助类)、XMLController.java(XML文件操作类)和Constants.java(存储系统运行...
- `XMLController.java`:使用JDOM处理XML文件,实现资源列表的保存、FTP服务器信息的管理等功能。 - `Constants.java`:存储运行时需要的常量,例如文件图标等。 - `CustomizedController.java`:自定义控件类,...
- 主要文件如MainFrame.java负责系统启动和界面设置,FtpFrame_AboutBox.java显示关于窗口,Tools.java提供文件操作辅助,XMLController.java处理XML文件操作,Constants.java存储系统常量,CustomizedController....
- 设计考虑了未来扩展和维护的可能性,如XMLController的设计便于添加新的FTP服务器信息,CustomizedController则允许自定义界面元素以适应不同需求。 综上所述,Lyra Resource Platform是一个全面的在线资源管理...
- XMLController.java:使用JDOM库操作XML文件,实现保存和检索FTP服务器信息,包括文件列表、搜索功能和服务器信息存储。 - Constants.java:存放系统运行时使用的常量,initContent()函数负责初始化这些常量。 - ...
XMLController.java使用JDOM库操作XML文件,实现FTP服务器列表保存、站内搜索、服务器信息存储和读取等功能。Constants.java存储系统运行时使用的常量,initcontent()函数负责初始化,CustomizedController.java包含...
- **XMLController.java**:利用JDOM库操作XML文件,支持的功能包括保存FTP服务器的文件列表、FTP服务器信息等。 - **Constants.java**:存储系统运行所需的常量,并在`initcontent()`函数中初始化所有常量。 - **...
public class XMLController : Controller { public ActionResult GetData() { // 创建XML对象 XDocument xdoc = new XDocument( new XElement("Root", new XElement("Child1", "Value1"), new XElement(...
- XMLController.java使用JDOM操作XML文件,用于保存FTP服务器文件列表、保存和读取FTP服务器信息、从type.xml读取搜索类型等。 - Constants.java放置系统运行时使用的一些常量,iconHashMap用于存放文件系统图标...
public class XmlController { @GetMapping("/xml") @Produces(MediaType.APPLICATION_XML_VALUE) public SimpleXmlBean xml() { SimpleXmlBean bean = new SimpleXmlBean(); bean.setMessage("Hello, XML!");...
- **XMLController.java**:使用JDOM库处理XML文件,实现FTP服务器文件列表存储、搜索、信息保存等功能。 - **Constants.java**:存储系统运行所需的常量,initcontent()函数负责初始化。 - **...
public class XmlController { @PostMapping(consumes = MediaType.APPLICATION_XML_VALUE, produces = MediaType.APPLICATION_XML_VALUE) public ResponseEntity<Element> processXml(@RequestBody Element ...
- **XMLController.java**:用于操作XML文件,支持保存FTP服务器信息、文件列表等功能。 - **Constants.java**:存放系统运行时使用的常量,如文件图标等。 - **CustomizedController.java**:包含自定义控件类,...
- **XMLController.java**:使用JDOM技术操作XML文件,实现的功能包括保存FTP服务器的文件列表、保存服务器信息、读取已存储的服务器信息等。 - **Constants.java**:定义系统运行时使用的一些常量,并在`...