Example usage for org.dom4j.io SAXReader SAXReader

List of usage examples for org.dom4j.io SAXReader SAXReader

Introduction

In this page you can find the example usage for org.dom4j.io SAXReader SAXReader.

Prototype

public SAXReader(String xmlReaderClassName) throws SAXException 

Source Link

Usage

From source file:sparql.java

/**
 * @param args/*  w ww  .ja  va2s .  c o  m*/
 *            the command line arguments
 * @throws InterruptedException 
 * @throws ParserConfigurationException 
 * @throws IOException 
 * @throws SAXException 
 * @throws DocumentException 
 */
public static void main(String[] args) throws InterruptedException, ParserConfigurationException, SAXException,
        IOException, DocumentException {
    ArrayList<TexteURI> extractedURIs = extractURI("liste_uri.xml");
    Iterator<TexteURI> it = extractedURIs.iterator();
    ArrayList<String> results = new ArrayList<>();
    //      ArrayList<String> queries = makeQueries(extractedURIs);
    //      ArrayList<String> urls = extractUrl(extractedURIs);
    //      String result = "";
    //
    //      for (int i = 0; i < queries.size(); i++) {
    //         System.out.println(queries.get(i));
    //         result += query(queries.get(i), urls.get(i));
    //
    //      }

    Sparql_thread s1 = new Sparql_thread("thread1", it, results);
    Sparql_thread s2 = new Sparql_thread("thread2", it, results);
    Sparql_thread s3 = new Sparql_thread("thread3", it, results);
    Sparql_thread s4 = new Sparql_thread("thread4", it, results);

    Thread t1 = new Thread(s1, "thread1");
    Thread t2 = new Thread(s2, "thread2");
    Thread t3 = new Thread(s3, "thread3");
    Thread t4 = new Thread(s4, "thread4");

    t1.start();
    t2.start();
    t3.start();
    t4.start();

    t1.join();
    t2.join();
    t3.join();
    t4.join();

    System.out.println(results.size());
    String result = "";
    for (String s : results) {
        result += s;
    }

    result = "<list_rdf>" + result;
    result = result + "</list_rdf>";
    result = "<?xml version=\"1.0\" encoding=\"iso-8859-1\" standalone=\"yes\"?>" + result;
    PrintWriter out = new PrintWriter("liste_rdf.xml");
    SAXReader reader = new SAXReader(org.ccil.cowan.tagsoup.Parser.class.getName());
    org.dom4j.Document doc = (org.dom4j.Document) reader
            .read(new ByteArrayInputStream(result.getBytes(StandardCharsets.UTF_8)));
    result = doc.asXML();
    result = result
            .replace("xmlns=\"http://www.w3.org/1999/xhtml\" xmlns:html=\"http://www.w3.org/1999/xhtml\"", "");
    //XMLWriter writer = new XMLWriter(out);
    //writer.write(doc);
    //writer.flush();
    out.write(result);
    out.flush();

}

From source file:batch.core.Util.java

License:Open Source License

/** Parses an XML file into a dom4j tree. */
public static Document loadXML(File file) throws Exception {
    // for this to work in Microsoft VM, this much is necessary...
    return new SAXReader(new org.apache.xerces.parsers.SAXParser()).read(file);
}

From source file:be.mxs.common.util.pdf.general.dossierCreators.StaffDossierPDFCreator.java

protected void printHRWorkSchedules(SessionContainerWO sessionContainerWO, AdminPerson activePatient)
        throws Exception {
    table = new PdfPTable(10);
    table.setWidthPercentage(pageWidth);

    // title/*from ww  w.  j  av  a2  s .  c  om*/
    table.addCell(createTitleCell(getTran("web", "workSchedule"), 10));

    // compose object to pass search criteria with
    Workschedule findObject = new Workschedule();
    findObject.personId = Integer.parseInt(activePatient.personid); // required

    List workschedules = Workschedule.getList(findObject);
    String sReturn = "";

    if (workschedules.size() > 0) {
        // header
        table.addCell(createHeaderCell(getTran("web.hr", "begin"), 1));
        table.addCell(createHeaderCell(getTran("web.hr", "end"), 1));
        table.addCell(createHeaderCell(getTran("web.hr", "fte.short"), 1));
        table.addCell(createHeaderCell(getTran("web.hr", "type"), 2));
        table.addCell(createHeaderCell(getTran("web.hr", "details"), 4));
        table.addCell(createHeaderCell(getTran("web.hr", "duration"), 1));

        Hashtable hSort = new Hashtable();
        Workschedule workschedule;

        // sort on workschedule.getUid
        for (int i = 0; i < workschedules.size(); i++) {
            workschedule = (Workschedule) workschedules.get(i);
            hSort.put(workschedule.getUid() + "=" + workschedule.getUid(), workschedule);
        }

        Vector keys = new Vector(hSort.keySet());
        Collections.sort(keys);
        Collections.reverse(keys);

        Iterator iter = keys.iterator();
        while (iter.hasNext()) {
            workschedule = (Workschedule) hSort.get(iter.next());

            // parse xml
            String sXML = checkString(workschedule.scheduleXml);
            String sScheduleType = "", sScheduleHours = "";

            if (sXML.length() > 0) {
                SAXReader reader = new SAXReader(false);
                org.dom4j.Document xmlDoc = reader.read(new StringReader(sXML));

                // fetch type and hours
                org.dom4j.Element workScheduleElem = xmlDoc.getRootElement();
                if (workScheduleElem != null) {
                    org.dom4j.Element scheduleElem = workScheduleElem.element("Schedule");
                    if (scheduleElem != null) {
                        sScheduleType = checkString(scheduleElem.attributeValue("type"));

                        if (sScheduleType.equalsIgnoreCase("day")) {
                            sScheduleHours = checkString(scheduleElem.elementText("HoursPerDay"));
                        } else if (sScheduleType.equalsIgnoreCase("week")) {
                            org.dom4j.Element weekSchedule = scheduleElem.element("WeekSchedule");
                            if (weekSchedule != null) {
                                sScheduleHours = checkString(weekSchedule.elementText("HoursPerWeek"));
                            }
                        } else if (sScheduleType.equalsIgnoreCase("month")) {
                            sScheduleHours = checkString(scheduleElem.elementText("HoursPerMonth")) + " "
                                    + getTran("web.hr", "hours").toLowerCase();
                        }
                    }
                }
                workschedule.type = sScheduleType;
            }

            // one record
            table.addCell(createValueCell(ScreenHelper.getSQLDate(workschedule.begin), 1));
            table.addCell(createValueCell(ScreenHelper.getSQLDate(workschedule.end), 1));
            table.addCell(createValueCell(workschedule.fte + "%", 1));
            table.addCell(createValueCell(getTran("web.hr", sScheduleType + "Schedule")
                    + (sScheduleType.equals("week") ? " (" + getPredefinedWeekScheduleName(workschedule) + ")"
                            : ""),
                    2));
            table.addCell(createValueCell(getWorkscheduleDetails(workschedule), 4));
            table.addCell(createValueCell(sScheduleHours, 1));

            //addWorkscheduleDetails(table,workschedule);
        }
    } else {
        // no records found
        table.addCell(createValueCell(getTran("web", "noRecordsFound"), 10));
    }

    // add transaction to doc
    if (table.size() > 0) {
        doc.add(new Paragraph(" "));
        doc.add(table);
    }
}

From source file:be.mxs.common.util.pdf.general.dossierCreators.StaffDossierPDFCreator.java

private String getPredefinedWeekScheduleName(Workschedule workschedule) throws Exception {
    String sName = "";

    if (workschedule.type.equalsIgnoreCase("week")) {
        String sScheduleXml = checkString(workschedule.scheduleXml);
        if (sScheduleXml.length() > 0) {
            // parse weekSchedule from xml            
            SAXReader reader = new SAXReader(false);
            org.dom4j.Document document = reader.read(new StringReader(sScheduleXml));
            org.dom4j.Element workScheduleElem = document.getRootElement();

            org.dom4j.Element scheduleElem = workScheduleElem.element("Schedule");
            if (scheduleElem != null) {
                workschedule.scheduleXml = scheduleElem.asXML();
            }/*from   w  w w . j  a  va 2  s.c o  m*/
        }

        String sWeekSchedule = workschedule.getScheduleElementValue(workschedule.type, "WeekSchedule")
                .replaceAll("\"", "'");

        // parse weekSchedule from xml           
        SAXReader reader = new SAXReader(false);
        org.dom4j.Document document = reader.read(new StringReader(sWeekSchedule));
        org.dom4j.Element weekSchedule = document.getRootElement();

        Vector weekSchedules = parsePredefinedWeekSchedulesFromXMLConfigValue();
        PredefinedWeekSchedule schedule;
        for (int i = 0; i < weekSchedules.size(); i++) {
            schedule = (PredefinedWeekSchedule) weekSchedules.get(i);

            if (weekSchedule.attributeValue("scheduleType").toLowerCase().equals(schedule.id.toLowerCase())) {
                sName = schedule.type;
            }
        }
    }

    return sName;
}

From source file:be.mxs.common.util.pdf.general.dossierCreators.StaffDossierPDFCreator.java

private void addSalaryDetails(PdfPTable table, Salary salary) {
    PdfPTable detailsTable = new PdfPTable(10);
    detailsTable.setWidthPercentage(100);

    //*** XML 1 - benefits (multi-add) **************************
    if (salary.benefits.length() > 0) {
        detailsTable.addCell(createSubtitleCell(getTran("web.hr", "benefits"), 10));

        // header          
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "beginDate"), 1));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "endDate"), 1));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "period"), 2));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "type"), 3));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "amount"), 3));

        try {/* w  w  w  .  j ava2  s  . c om*/
            // parse benefits from xml           
            SAXReader reader = new SAXReader(false);
            org.dom4j.Document document = reader.read(new StringReader(salary.benefits));
            org.dom4j.Element benefitsElem = document.getRootElement();

            if (benefitsElem != null) {
                String sTmpBegin, sTmpEnd, sTmpPeriod, sTmpType, sTmpAmount;
                org.dom4j.Element benefitElem;

                Iterator benefitsIter = benefitsElem.elementIterator("Benefit");
                while (benefitsIter.hasNext()) {
                    benefitElem = (org.dom4j.Element) benefitsIter.next();

                    sTmpBegin = checkString(benefitElem.elementText("Begin"));
                    sTmpEnd = checkString(benefitElem.elementText("End"));
                    sTmpPeriod = checkString(benefitElem.elementText("Period"));
                    sTmpType = checkString(benefitElem.elementText("Type"));
                    sTmpAmount = checkString(benefitElem.elementText("Amount"));

                    // one benefit
                    detailsTable.addCell(createValueCell(sTmpBegin, 1));
                    detailsTable.addCell(createValueCell(sTmpEnd, 1));
                    detailsTable.addCell(createValueCell(getTran("hr.salary.period", sTmpPeriod), 2));
                    detailsTable.addCell(createValueCell(getTran("hr.salary.benefit.type", sTmpType), 3));

                    cell = createValueCell(
                            sTmpAmount + " " + MedwanQuery.getInstance().getConfigParam("currency", ""), 3);
                    cell.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
                    detailsTable.addCell(cell);
                }
            }
        } catch (Exception e) {
            Debug.printStackTrace(e);
        }
    }

    //*** XML 2 - bonuses (multi-add) **************************        
    if (salary.bonuses.length() > 0) {
        table.addCell(createSubtitleCell(getTran("web.hr", "bonuses"), 10));

        // header
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "beginDate"), 1));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "endDate"), 1));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "period"), 2));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "type"), 2));
        detailsTable.addCell(createHeaderCell(getTran("web", "percentage"), 2));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "amount"), 2));

        try {
            // parse bonuses from xml           
            SAXReader reader = new SAXReader(false);
            org.dom4j.Document document = reader.read(new StringReader(salary.bonuses));
            org.dom4j.Element bonusesElem = document.getRootElement();

            if (bonusesElem != null) {
                String sTmpBegin, sTmpEnd, sTmpPeriod, sTmpType, sTmpPercentage, sTmpAmount;
                org.dom4j.Element bonusElem;

                Iterator bonusesIter = bonusesElem.elementIterator("Bonus");
                while (bonusesIter.hasNext()) {
                    bonusElem = (org.dom4j.Element) bonusesIter.next();

                    sTmpBegin = checkString(bonusElem.elementText("Begin"));
                    sTmpEnd = checkString(bonusElem.elementText("End"));
                    sTmpPeriod = checkString(bonusElem.elementText("Period"));
                    sTmpType = checkString(bonusElem.elementText("Type"));
                    sTmpPercentage = checkString(bonusElem.elementText("Percentage"));
                    sTmpAmount = checkString(bonusElem.elementText("Amount"));

                    // one record
                    detailsTable.addCell(createValueCell(sTmpBegin, 1));
                    detailsTable.addCell(createValueCell(sTmpEnd, 1));
                    detailsTable.addCell(createValueCell(sTmpPeriod, 2));
                    detailsTable.addCell(createValueCell(sTmpType, 2));
                    detailsTable.addCell(createValueCell(sTmpPercentage + "%", 2));

                    cell = createValueCell(
                            sTmpAmount + " " + MedwanQuery.getInstance().getConfigParam("currency", ""), 2);
                    cell.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
                    detailsTable.addCell(cell);
                }
            }
        } catch (Exception e) {
            Debug.printStackTrace(e);
        }
    }

    //*** XML 3 - otherIncome (multi-add) ***********************
    if (salary.otherIncome.length() > 0) {
        table.addCell(createSubtitleCell(getTran("web.hr", "otherIncome"), 10));

        // header
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "beginDate"), 1));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "endDate"), 1));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "period"), 2));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "type"), 3));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "amount"), 3));

        try {
            // parse otherIncome from xml           
            SAXReader reader = new SAXReader(false);
            org.dom4j.Document document = reader.read(new StringReader(salary.otherIncome));
            org.dom4j.Element benefitsElem = document.getRootElement();

            if (benefitsElem != null) {
                String sTmpBegin, sTmpEnd, sTmpPeriod, sTmpType, sTmpAmount;
                org.dom4j.Element otherIncomeElem;

                Iterator otherIncomesIter = benefitsElem.elementIterator("OtherIncome");
                while (otherIncomesIter.hasNext()) {
                    otherIncomeElem = (org.dom4j.Element) otherIncomesIter.next();

                    sTmpBegin = checkString(otherIncomeElem.elementText("Begin"));
                    sTmpEnd = checkString(otherIncomeElem.elementText("End"));
                    sTmpPeriod = checkString(otherIncomeElem.elementText("Period"));
                    sTmpType = checkString(otherIncomeElem.elementText("Type"));
                    sTmpAmount = checkString(otherIncomeElem.elementText("Amount"));

                    // one record
                    detailsTable.addCell(createValueCell(sTmpBegin, 1));
                    detailsTable.addCell(createValueCell(sTmpEnd, 1));
                    detailsTable.addCell(createValueCell(sTmpPeriod, 2));
                    detailsTable.addCell(createValueCell(sTmpType, 3));

                    cell = createValueCell(
                            sTmpAmount + " " + MedwanQuery.getInstance().getConfigParam("currency", ""), 3);
                    cell.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
                    detailsTable.addCell(cell);
                }
            }
        } catch (Exception e) {
            Debug.printStackTrace(e);
        }
    }

    //*** XML 4 - deductions (multi-add) ************************
    if (salary.deductions.length() > 0) {
        detailsTable.addCell(createSubtitleCell(getTran("web.hr", "deductions"), 10));

        // header
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "beginDate"), 1));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "endDate"), 1));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "period"), 2));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "type"), 3));
        detailsTable.addCell(createHeaderCell(getTran("web.hr", "amount"), 3));

        try {
            // parse deductions from xml           
            SAXReader reader = new SAXReader(false);
            org.dom4j.Document document = reader.read(new StringReader(salary.deductions));
            org.dom4j.Element deductionsElem = document.getRootElement();

            if (deductionsElem != null) {
                String sTmpBegin, sTmpEnd, sTmpPeriod, sTmpType, sTmpAmount;
                org.dom4j.Element deductionElem;

                Iterator deductionsIter = deductionsElem.elementIterator("Deduction");
                while (deductionsIter.hasNext()) {
                    deductionElem = (org.dom4j.Element) deductionsIter.next();

                    sTmpBegin = checkString(deductionElem.elementText("Begin"));
                    sTmpEnd = checkString(deductionElem.elementText("End"));
                    sTmpPeriod = checkString(deductionElem.elementText("Period"));
                    sTmpType = checkString(deductionElem.elementText("Type"));
                    sTmpAmount = checkString(deductionElem.elementText("Amount"));

                    // one record
                    detailsTable.addCell(createValueCell(sTmpBegin, 1));
                    detailsTable.addCell(createValueCell(sTmpEnd, 1));
                    detailsTable.addCell(createValueCell(sTmpPeriod, 2));
                    detailsTable.addCell(createValueCell(sTmpType, 3));

                    cell = createValueCell(
                            sTmpAmount + " " + MedwanQuery.getInstance().getConfigParam("currency", ""), 3);
                    cell.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
                    detailsTable.addCell(cell);
                }
            }
        } catch (Exception e) {
            Debug.printStackTrace(e);
        }
    }

    if (detailsTable.size() > 0) {
        table.addCell(emptyCell(3));
        cell = createCell(new PdfPCell(detailsTable), table.getNumberOfColumns() - 3, PdfPCell.ALIGN_CENTER,
                PdfPCell.BOX);
        cell.setPadding(2);
        table.addCell(cell);
    }
}

From source file:be.mxs.common.util.pdf.general.dossierCreators.StaffDossierPDFCreator.java

private void displayWeekSchedule(PdfPTable table, Workschedule schedule) throws Exception {
    String sScheduleXml = checkString(schedule.scheduleXml);
    if (sScheduleXml.length() > 0) {
        // parse weekSchedule from xml            
        SAXReader reader = new SAXReader(false);
        org.dom4j.Document document = reader.read(new StringReader(sScheduleXml));
        org.dom4j.Element workScheduleElem = document.getRootElement();

        // attribute : type
        org.dom4j.Element scheduleElem = workScheduleElem.element("Schedule");
        if (scheduleElem != null) {
            schedule.scheduleXml = scheduleElem.asXML();
        }/*www.ja v  a 2 s. c  o m*/
    }

    String sWeekSchedule = schedule.getScheduleElementValue(schedule.type, "WeekSchedule").replaceAll("\"",
            "'");

    // parse weekSchedule from xml           
    SAXReader reader = new SAXReader(false);
    org.dom4j.Document document = reader.read(new StringReader(sWeekSchedule));
    org.dom4j.Element weekSchedule = document.getRootElement();

    displayTimeblocks(table, parseWeekschedule(weekSchedule));
}

From source file:be.mxs.common.util.pdf.general.dossierCreators.StaffDossierPDFCreator.java

private String getWeekScheduleDetails(Workschedule schedule) throws Exception {
    String sDetails = "";

    String sScheduleXml = checkString(schedule.scheduleXml);
    if (sScheduleXml.length() > 0) {
        // parse weekSchedule from xml            
        SAXReader reader = new SAXReader(false);
        org.dom4j.Document document = reader.read(new StringReader(sScheduleXml));
        org.dom4j.Element workScheduleElem = document.getRootElement();

        // attribute : type
        org.dom4j.Element scheduleElem = workScheduleElem.element("Schedule");
        if (scheduleElem != null) {
            schedule.scheduleXml = scheduleElem.asXML();
        }/*from   ww w .j  a va 2 s.c om*/
    }

    String sWeekSchedule = schedule.getScheduleElementValue(schedule.type, "WeekSchedule").replaceAll("\"",
            "'");

    // parse weekSchedule from xml           
    SAXReader reader = new SAXReader(false);
    org.dom4j.Document document = reader.read(new StringReader(sWeekSchedule));
    org.dom4j.Element weekSchedule = document.getRootElement();

    sDetails = getTimeblocksDetails(parseWeekschedule(weekSchedule));

    return sDetails;
}

From source file:bixo.parser.DOMParser.java

License:Apache License

@Override
public void prepare(FlowProcess process, OperationCall<NullContext> opCall) {
    super.prepare(process, opCall);

    _reader = new SAXReader(new Parser());
    _reader.setXMLFilter(new DowngradeXmlFilter(_removeNamespaces));
    _reader.setEncoding("UTF-8");
    _input = new ParsedDatum();
}

From source file:ca.coder2000.recipes.RecipeFile.java

License:Mozilla Public License

/**
 * Creates a new instance of RecipeFile/*from w  w  w. ja  v  a 2 s . co m*/
 * @param file the file we want this class to load and manage.
 */
public RecipeFile(File file) {
    SAXReader reader = new SAXReader(true);
    reader.setValidation(true);

    try {
        reader.setFeature("http://xml.org/sax/features/validation", true);
        reader.setFeature("http://apache.org/xml/features/validation/schema", true);
        reader.setProperty("http://apache.org/xml/properties/schema/external-noNamespaceSchemaLocation",
                "schemas/recipe.xsd");
        reader.setErrorHandler(new RecipeErrorHandler());
        doc = reader.read(file);
        checkVersion();
    } catch (DocumentException de) {
        JOptionPane.showMessageDialog(null, de.getMessage(),
                java.util.ResourceBundle.getBundle("recipe").getString("Error_Parsing_Recipe"),
                JOptionPane.ERROR_MESSAGE);
    } catch (SAXException sxe) {
        JOptionPane.showMessageDialog(null, sxe.getMessage(),
                java.util.ResourceBundle.getBundle("recipe").getString("Error_Parsing_Recipe"),
                JOptionPane.ERROR_MESSAGE);
    } catch (Exception e) {
        JOptionPane.showMessageDialog(null, e.getMessage(),
                java.util.ResourceBundle.getBundle("recipe").getString("Error_Parsing_Recipe"),
                JOptionPane.ERROR_MESSAGE);
    }
}

From source file:ch.javasoft.metabolic.parse.SbmlParser.java

License:BSD License

protected SAXReader createSAXReader(final boolean validate) {
    if (!validate)
        return new SAXReader(validate);
    return new SAXReader(validate) {
        @Override/*from  ww  w  . j av  a  2s  .c  o  m*/
        protected XMLReader createXMLReader() throws org.xml.sax.SAXException {
            XMLReader reader = super.createXMLReader();
            reader.setFeature("http://apache.org/xml/features/validation/schema", true);
            try {
                reader.setProperty("http://java.sun.com/xml/jaxp/properties/schemaLanguage", W3C_XML_SCHEMA);
                reader.setProperty("http://java.sun.com/xml/jaxp/properties/schemaSource",
                        new URL(SBML_SCHEMA2_URL).openStream());
            } catch (Exception ex) {
                ex.printStackTrace();
            }
            return reader;
        }
    };
}