List of usage examples for org.dom4j.io SAXReader SAXReader
public SAXReader()
From source file:com.glaf.jbpm.export.MxJbpmProcessExporter.java
License:Apache License
public void addElement(Document doc, Map<String, Object> context) { Element root = doc.getRootElement(); GraphSession graphSession = null;/*from w w w . ja v a 2 s . c om*/ JbpmContext jbpmContext = null; try { jbpmContext = ProcessContainer.getContainer().createJbpmContext(); graphSession = jbpmContext.getGraphSession(); List<ProcessDefinition> processDefinitions = graphSession.findLatestProcessDefinitions(); if (processDefinitions != null && processDefinitions.size() > 0) { Element element = root.addElement("processes"); Iterator<ProcessDefinition> iterator = processDefinitions.iterator(); while (iterator.hasNext()) { ProcessDefinition pd = iterator.next(); Element elem = element.addElement("process"); elem.addAttribute("name", pd.getName()); elem.addAttribute("description", pd.getDescription()); } } } catch (Exception ex) { if (LogUtils.isDebug()) { ex.printStackTrace(); } } finally { Context.close(jbpmContext); } Element jbpmCfgTemplate = root.addElement("jbpm-cfg-template"); String configPath = SystemProperties.getConfigRootPath(); String path = configPath + "/conf/jbpm/template"; java.io.File directory = new java.io.File(path); String[] filelist = directory.list(); InputStream inputStream = null; SAXReader xmlReader = new SAXReader(); for (int i = 0; i < filelist.length; i++) { String filename = directory.getAbsolutePath() + "/" + filelist[i]; File file = new File(filename); if (file.isFile() && file.getName().endsWith(".xml")) { try { inputStream = new FileInputStream(file); Document doc2x = xmlReader.read(inputStream); Element root2x = doc2x.getRootElement(); List<?> elements = root2x.elements("action-definition"); Iterator<?> iterator = elements.iterator(); while (iterator.hasNext()) { Element elem = (Element) iterator.next(); elem.setParent(jbpmCfgTemplate); elem.setDocument(doc); jbpmCfgTemplate.add(elem); } inputStream.close(); inputStream = null; } catch (Exception ex) { throw new RuntimeException(ex); } } } }
From source file:com.glaf.jbpm.xml.JpdlXmlReader.java
License:Apache License
public List<String> getTaskNames(InputStream inputStream) { List<String> taskNames = new ArrayList<String>(); SAXReader xmlReader = new SAXReader(); Document doc = null;/*from w ww. ja v a 2s.c om*/ try { doc = xmlReader.read(inputStream); } catch (Exception ex) { throw new RuntimeException(ex); } Element root = doc.getRootElement(); List<?> rows = root.elements("task-node"); Iterator<?> iterator = rows.iterator(); while (iterator.hasNext()) { Element element = (Element) iterator.next(); List<?> tasks = element.elements("task"); Iterator<?> iter = tasks.iterator(); while (iter.hasNext()) { Element elem = (Element) iter.next(); String taskName = elem.attributeValue("name"); if (taskNames.contains(taskName)) { throw new RuntimeException("task name '" + taskName + "' is exists."); } taskNames.add(taskName); } } return taskNames; }
From source file:com.glaf.jbpm.xml.JpdlXmlReader.java
License:Apache License
public List<Todo> read(InputStream inputStream) { List<Todo> todoList = new java.util.ArrayList<Todo>(); SAXReader xmlReader = new SAXReader(); int sortNo = 1; try {/*from w w w. j a v a 2 s . co m*/ Document doc = xmlReader.read(inputStream); Element root = doc.getRootElement(); String processName = root.attributeValue("name"); String moduleName = root.elementText("description"); List<?> rows = root.elements("task-node"); Iterator<?> iterator = rows.iterator(); while (iterator.hasNext()) { Element element = (Element) iterator.next(); List<?> tasks = element.elements("task"); Iterator<?> iter = tasks.iterator(); while (iter.hasNext()) { Element elem = (Element) iter.next(); String taskName = elem.attributeValue("name"); if (taskName.startsWith("task55")) { continue; } Todo model = new Todo(); model.setSortNo(sortNo++); model.setProcessName(processName); model.setModuleName(moduleName); model.setTitle(moduleName + " " + elem.attributeValue("description") + "??"); model.setContent(moduleName + " " + elem.attributeValue("description") + "??"); model.setCode(processName + "_" + taskName); model.setTaskName(taskName); model.setProvider("jbpm"); model.setLinkType(processName + "_" + taskName); String detail_url = conf.get("jbpm_task_detail_url"); String list_url = conf.get("jbpm_task_url"); model.setLink(detail_url + "&rowId=#{rowId}&x_method=view&app_name=" + processName); model.setListLink(list_url + "&taskType=running&app_name=" + processName); model.setLimitDay(2); model.setXa(6); model.setXb(6); todoList.add(model); } } } catch (Exception ex) { throw new RuntimeException(ex); } return todoList; }
From source file:com.glaf.mail.MxMailHelper.java
License:Apache License
public Map<String, String> getAttributes(String attribute) { Map<String, String> dataMap = new java.util.HashMap<String, String>(); StringReader stringReader = new StringReader(attribute); SAXReader xmlReader = new SAXReader(); try {/* www. j ava 2 s . c om*/ Document doc = xmlReader.read(stringReader); Element root = doc.getRootElement(); List<?> elements = root.elements("element"); if (elements != null && elements.size() > 0) { Iterator<?> iterator = elements.iterator(); while (iterator.hasNext()) { Element element = (Element) iterator.next(); String name = element.attributeValue("name"); String value = element.attributeValue("value"); if (StringUtils.isEmpty(value)) { value = element.getStringValue(); } dataMap.put(name, value); } } } catch (Exception ex) { ex.printStackTrace(); } return dataMap; }
From source file:com.glaf.mail.xml.MailXmlReader.java
License:Apache License
public List<MailTemplate> read(java.io.InputStream inputStream) { List<MailTemplate> mailTemplates = new java.util.ArrayList<MailTemplate>(); SAXReader xmlReader = new SAXReader(); Document doc = null;/*from w w w.j av a 2 s. c om*/ try { doc = xmlReader.read(inputStream); } catch (Exception ex) { throw new RuntimeException(ex); } Element root = doc.getRootElement(); List<?> rows = root.elements(); Iterator<?> iterator = rows.iterator(); while (iterator.hasNext()) { Element element = (Element) iterator.next(); String mailId = element.attributeValue("id"); String title = element.attributeValue("title"); String templateId = element.elementText("templateId"); String templatePath = element.elementText("templatePath"); MailTemplate mt = new MailTemplate(); mt.setTitle(title); mt.setMailDefId(mailId); mt.setTemplateId(templateId); mt.setTemplatePath(templatePath); mt.setProperties(this.readProperties(element)); mt.setContent(element.elementText("content")); mt.setDescription(element.elementText("description")); List<?> datasets = element.elements("dataset"); Iterator<?> iter = datasets.iterator(); while (iter.hasNext()) { Element elem = (Element) iter.next(); MailDataSet mailDS = new MailDataSet(); mailDS.setProperties(this.readProperties(elem)); List<?> rowsets = elem.elements("rowset"); Iterator<?> it = rowsets.iterator(); while (it.hasNext()) { Element em = (Element) it.next(); MailRowSet rs = new MailRowSet(); rs.setQuery(em.elementTextTrim("query")); rs.setMapping(em.attributeValue("mapping")); rs.setMailMgr(em.attributeValue("mailMgr")); rs.setMailMgrClassName(em.attributeValue("mailMgrClassName")); rs.setMailMgrMapping(em.attributeValue("mailMgrMapping")); rs.setDataMgr(em.attributeValue("dataMgr")); rs.setDataMgrBeanId(em.attributeValue("dataMgrBeanId")); rs.setDataMgrClassName(em.attributeValue("dataMgrClassName")); rs.setProperties(this.readProperties(em)); String singleResult = em.attributeValue("singleResult"); if ("true".equals(singleResult)) { rs.setSingleResult(true); } mailDS.addRowSet(rs); } mt.addDataSet(mailDS); } mailTemplates.add(mt); } return mailTemplates; }
From source file:com.glaf.report.xml.ReportDefinitionReader.java
License:Apache License
public List<ReportDefinition> read(java.io.InputStream inputStream) { List<ReportDefinition> reports = new java.util.ArrayList<ReportDefinition>(); SAXReader xmlReader = new SAXReader(); Document doc = null;//w ww . j av a 2 s . c om try { doc = xmlReader.read(inputStream); } catch (Exception ex) { throw new RuntimeException(ex); } Element root = doc.getRootElement(); List<?> rows = root.elements(); Iterator<?> iterator = rows.iterator(); while (iterator.hasNext()) { Element element = (Element) iterator.next(); String reportId = element.attributeValue("id"); String templateId = element.elementText("templateId"); String templateFile = element.elementText("templateFile"); ReportDefinition rdf = new ReportDefinition(); rdf.setReportId(reportId); rdf.setTemplateId(templateId); rdf.setTemplateFile(templateFile); rdf.setProperties(this.readProperties(element)); List<?> datasets = element.elements("dataset"); Iterator<?> iter = datasets.iterator(); while (iter.hasNext()) { Element elem = (Element) iter.next(); ReportDataSet rds = new ReportDataSet(); rds.setDatasourceName(elem.attributeValue("datasourceName")); rds.setProperties(this.readProperties(elem)); List<?> rowsets = elem.elements("rowset"); Iterator<?> it = rowsets.iterator(); while (it.hasNext()) { Element em = (Element) it.next(); ReportRowSet rs = new ReportRowSet(); rs.setQuery(em.elementTextTrim("query")); rs.setMapping(em.attributeValue("mapping")); rs.setRptMgr(em.attributeValue("rptMgr")); rs.setRptMgrClassName(em.attributeValue("rptMgrClassName")); rs.setRptMgrMapping(em.attributeValue("rptMgrMapping")); rs.setDataMgr(em.attributeValue("dataMgr")); rs.setDataMgrBeanId(em.attributeValue("dataMgrBeanId")); rs.setDataMgrClassName(em.attributeValue("dataMgrClassName")); rs.setProperties(this.readProperties(em)); String singleResult = em.attributeValue("singleResult"); if ("true".equals(singleResult)) { rs.setSingleResult(true); } rds.addRowSet(rs); } rdf.addDataSet(rds); } reports.add(rdf); } return reports; }
From source file:com.glaf.wechat.sdk.WeixinExecutor.java
License:Apache License
private void parseInputStream() throws Exception { SAXReader xmlReader = new SAXReader(); Document doc = null;// www . j a v a 2 s. c o m try { doc = xmlReader.read(request.getInputStream()); } catch (DocumentException ex) { ex.printStackTrace(); doc = xmlReader.read(new ByteArrayInputStream(request.getParameter("xml").getBytes("UTF-8"))); } String uri = request.getRequestURI(); String id = uri.substring(uri.lastIndexOf("/") + 1); Long accountId = Long.parseLong(id); WxUser user = WxIdentityFactory.getUserByAccountId(accountId); Element root = doc.getRootElement(); logger.debug(root.asXML()); String type = root.elementText(IMessage.TAG_MSGTYPE); if (StringUtils.equalsIgnoreCase(type, MESSAGE_TEXT)) { message = new TextMessage(); messageHandler = new TextMessageHandler(); } else if (StringUtils.equalsIgnoreCase(type, MESSAGE_EVENT)) { // do subscribe event message = new EventMessage(); messageHandler = new EventMessageHandler(); } else if (StringUtils.equalsIgnoreCase(type, MESSAGE_IMAGE)) { message = new ImageMessage(); messageHandler = new ImageMessageHandler(); } else if (StringUtils.equalsIgnoreCase(type, MESSAGE_LINK)) { message = new LinkMessage(); messageHandler = new LinkMessageHandler(); } else if (StringUtils.equalsIgnoreCase(type, MESSAGE_LOCATION)) { message = new LocationMessage(); messageHandler = new LocationMessageHandler(); } else if (StringUtils.equalsIgnoreCase(type, MESSAGE_VOICE)) { message = new VoiceMessage(); messageHandler = new VoiceMessageHandler(); } else if (StringUtils.equalsIgnoreCase(type, MESSAGE_VIDEO)) { message = new VideoMessage(); messageHandler = new VideoMessageHandler(); } message.setRoot(root); message.setAccountId(accountId); message.setCustomer(user.getActorId()); message.setContextPath(request.getContextPath()); message.setRequestParameters(RequestUtils.getParameterMap(request)); String serviceUrl = WechatUtils.getServiceUrl(request); message.setServiceUrl(serviceUrl); message.setRemoteIPAddr(RequestUtils.getIPAddress(request)); // do the default/common parse! messageHandler.parseMessage(message, root); }
From source file:com.glaf.wechat.util.MessageUtils.java
License:Apache License
/** * ???XML/*from ww w .j a v a 2s . c o m*/ * * @param request * @return * @throws Exception */ @SuppressWarnings("unchecked") public static Map<String, String> parseXml(HttpServletRequest request) { // ?HashMap Map<String, String> map = new java.util.concurrent.ConcurrentHashMap<String, String>(); // request?? InputStream inputStream = null; // ?? SAXReader reader = new SAXReader(); try { inputStream = request.getInputStream(); Document document = reader.read(inputStream); // xml Element root = document.getRootElement(); // ? List<Element> elementList = root.elements(); // ??? for (Element e : elementList) { map.put(e.getName(), e.getText()); } } catch (Exception ex) { ex.printStackTrace(); throw new RuntimeException(ex); } finally { try { // ? if (inputStream != null) { inputStream.close(); inputStream = null; } } catch (IOException ex) { } } return map; }
From source file:com.globalsight.connector.mindtouch.util.MindTouchHelper.java
License:Apache License
public static Document getDocument(String xml) throws DocumentException { SAXReader reader = new SAXReader(); return reader.read(new InputSource(new StringReader(xml))); }
From source file:com.globalsight.everest.edit.offline.OfflineEditManagerLocal.java
License:Apache License
private DetectionResult determineUploadFormat(File p_tmpFile, User p_user) throws Exception { DetectionResult rslt = new DetectionResult(); try {/*www . jav a 2 s. c o m*/ // First we assume the basics - that this is a text file upload FormatTwoEncodingSniffer conv = new FormatTwoEncodingSniffer(); FileInputStream is = new FileInputStream(p_tmpFile); InputStreamReader isr = conv.convertFileToUnicode(is); BufferedReader br = new BufferedReader(isr); String content = br.readLine(); RE rtfRe = new RE(RE_RTF1_FILE_SIGNATURE); RE txtRe = new RE(RE_OFFLINE_TEXT_FILE_SIGNATURE); if (rtfRe.match(content)) { RtfAPI api = new RtfAPI(); RtfDocument doc = api.parse(br); doc = api.optimize(doc); if (isParaViewOneWorkFile(doc)) { s_category.debug("Detected UPLOAD_TYPE_GS_PARAVIEW_1"); rslt.m_type = UPLOAD_TYPE_GS_PARAVIEW_1; rslt.m_rtfDoc = doc; rslt.m_reader = br; } else if (isRtfWrappedTextWorkFile(doc)) { s_category.debug("Detected UPLOAD_TYPE_GS_RTF_WRAPPED_UNICODE_TEXT"); rslt.m_type = UPLOAD_TYPE_GS_WRAPPED_UNICODE_TEXT; rslt.m_rtfDoc = doc; rslt.m_reader = br; } else { s_category.debug("Detected UPLOAD_TYPE_UNKNOWN"); rslt.m_type = UPLOAD_TYPE_UNKNOWN; rslt.m_rtfDoc = null; rslt.m_reader = null; } } else if (txtRe.match(content)) { s_category.debug("Detected UPLOAD_TYPE_GS_UNICODE_TEXT."); rslt.m_type = UPLOAD_TYPE_GS_UNICODE_TEXT; // RESET NOTE: We reset the reader by creating a new // one using the detected encoding. // The number of characters read by readLine() is // dependent on whether or not there are any carriage // returns in the file, so it is too risky. According // to the mark method, reset may fail. rslt.m_reader = new BufferedReader( new InputStreamReader(new FileInputStream(p_tmpFile), isr.getEncoding())); } else if (content.indexOf("<?xml") > -1) { content = br.readLine(); // read the second non-null line while (content == null || "".equals(content.trim())) { content = br.readLine(); } // Xliff file if (content.indexOf("<xliff") > -1) { if (content.contains("2.0")) { rslt.m_type = UPLOAD_TYPE_XLF20; } else { rslt.m_type = UPLOAD_TYPE_XLF; } } // TTX file else if (content.indexOf("<TRADOStag") > -1) { rslt.m_type = UPLOAD_TYPE_TTX; String ttxContent = ""; try { SAXReader reader = new SAXReader(); Document doc = reader.read(p_tmpFile); TTXParser parser = new TTXParser(); boolean isParsingTTXForGS = true; ttxContent = parser.parseToTxt(doc, isParsingTTXForGS); } catch (Exception de) { s_category.error("ttx parse error"); s_category.error(de.getMessage(), de); isXlfOrTtxException = true; throw de; } StringReader sr = new StringReader(ttxContent); rslt.m_reader = new BufferedReader(sr); } } else { // Now, we may have correctly detected unicode but it // lacks our signature. At this point we can only // assume this is a native **unextracted** unicode // text file. s_category.debug("Detected UPLOAD_TYPE_UNKNOWN_UNICODE_TEXT."); rslt.m_type = UPLOAD_TYPE_UNKNOWN_UNICODE_TEXT; // see the "RESET NOTE:" above rslt.m_reader = new BufferedReader( new InputStreamReader(new FileInputStream(p_tmpFile), isr.getEncoding())); } } catch (Exception ex) { boolean isExHandled = false; try { // If we received an exception while trying to convert // the file to unicode text above, we know the file is // not a standard offlineTextFile. So now lets try RTF. // Note: rtf is always ASCII. FileInputStream is = new FileInputStream(p_tmpFile); InputStreamReader isr = new InputStreamReader(is, "ASCII"); BufferedReader br = new BufferedReader(isr); // First - confirm we have some form of RTF String tmp = br.readLine(); RE matcher = new RE(RE_RTF1_FILE_SIGNATURE); if (matcher.match(tmp)) { isExHandled = true; // If we have RTF, parse it into an RTF object model. // see the "RESET NOTE:" above br = new BufferedReader(new InputStreamReader(new FileInputStream(p_tmpFile), "ASCII")); RtfAPI api = new RtfAPI(); RtfDocument doc = api.parse(br); doc = api.optimize(doc); if (isParaViewOneWorkFile(doc)) { s_category.debug("Detected UPLOAD_TYPE_GS_PARAVIEW_1"); rslt.m_type = UPLOAD_TYPE_GS_PARAVIEW_1; rslt.m_rtfDoc = doc; rslt.m_reader = br; } else if (isRtfWrappedTextWorkFile(doc)) { s_category.debug("Detected UPLOAD_TYPE_GS_RTF_WRAPPED_UNICODE_TEXT"); rslt.m_type = UPLOAD_TYPE_GS_WRAPPED_UNICODE_TEXT; rslt.m_rtfDoc = doc; rslt.m_reader = br; } else { s_category.debug("Detected UPLOAD_TYPE_UNKNOWN"); rslt.m_type = UPLOAD_TYPE_UNKNOWN; rslt.m_rtfDoc = null; rslt.m_reader = null; } } } catch (Exception ex2) { s_category.error("Failed to run the RTF detection process. " + "Retuning UPLOAD_TYPE_DETECTION_ERROR. The exception follows: \n" + ex2.toString()); rslt.m_type = UPLOAD_TYPE_DETECTION_ERROR; } if (isXlfOrTtxException) { throw ex; } if (!isExHandled) { // throw ex; s_category.debug("Detected UPLOAD_TYPE_UNKNOWN"); rslt.m_type = UPLOAD_TYPE_UNKNOWN; rslt.m_rtfDoc = null; rslt.m_reader = null; } } return rslt; }