在docFile.jsp中添加
<%@page import=”com.seeyon.v3x.services.document.DocumentFactory,com.seeyon.v3x.services.document.impl.DocumentManager”%>
在docFlie.jsp文件中添加逻辑代码,在这里我们采用java.io.StringWriter接受导出的文件用saveToPropertyList().saveXMLToStream(StringWriter sw)方法。
if (thirdMenuIds != null && thirdMenuIds.length() > 0) { String thirdIds[] = thirdMenuIds.split(","); try { DocumentFactory factory = DocumentManager.getInstance(); for (int i = 0; i < thirdIds.length; i++) { ArcFolderItem doc = factory.exportArchive(Long .valueOf(thirdIds[i])); StringWriter sw = new StringWriter(); doc.saveToPropertyList().saveXMLToStream(sw); // 将导出的XML调用第三方系统的接口,导入到第三方档案系统 } } catch (Exception e) { System.out.println("出异常了"); } }
将导出的xml文件输出到指定的外部文件中,用org.dom4j.io.XMLWriter写到文件中,也可用其他方式写文件。在import中增加
org.dom4j.io.*,
在for循环前面添加代码:
XMLWriter output=new XMLWriter(new FileWriter("d:/aaa.xml")); output.setEscapeText(false);//设置后可以防止导出后的文件将“<”和“>”改成“<”和“>” String version="<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>"; output.write(version)
for循环中添加
output.write(sw);
for循环后面添加
output.close();
添加后的效果如下:
try { com.seeyon.v3x.services.document.DocumentFactory factory = com.seeyon.v3x.services.document.impl.DocumentManager .getInstance(); XMLWriter output = new XMLWriter(new FileWriter("d:/aaa.xml")); output.setEscapeText(false); String version = "<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>"; output.write(version); for (int i = 0; i < thirdIds.length; i++) { ArcFolderItem doc = factory.exportArchive(Long .valueOf(thirdIds[i])); StringWriter sw = new StringWriter(); doc.saveToPropertyList().saveXMLToStream(sw); output.write(sw.toString()); } output.close(); } catch (Exception e) { e.printStackTrace(); }