Example usage for org.dom4j.io SAXReader read

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

Introduction

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

Prototype

public Document read(InputSource in) throws DocumentException 

Source Link

Document

Reads a Document from the given InputSource using SAX

Usage

From source file:aml.util.MeSHParser.java

License:Apache License

public static void main(String[] args) throws Exception {
    Vector<String> concepts = new Vector<String>();
    Lexicon lexicon = new Lexicon();

    SAXReader reader = new SAXReader();
    File f = new File("store/knowledge/mesh.xml");
    Document doc = reader.read(f);
    Element root = doc.getRootElement();

    Iterator<?> records = root.elementIterator("DescriptorRecord");
    int index = 0;
    while (records.hasNext()) {
        Element concList = ((Element) records.next()).element("ConceptList");
        Iterator<?> conc = concList.elementIterator("Concept");
        while (conc.hasNext()) {
            Element c = (Element) conc.next();
            String conceptName = c.element("ConceptName").elementText("String");
            concepts.add(conceptName);//  w  w w.  ja  va 2 s  .  c  om
            lexicon.add(index, conceptName, LexicalType.LABEL, "", 0.90);

            String casN1Name = c.elementText("CASN1Name");
            if (casN1Name != null)
                lexicon.add(index, casN1Name, LexicalType.FORMULA, "", 0.85);

            Element termList = c.element("TermList");
            Iterator<?> terms = termList.elementIterator("Term");
            while (terms.hasNext()) {
                Element t = (Element) terms.next();
                String termName = t.elementText("String");
                if (!conceptName.equals(termName))
                    lexicon.add(index, termName, LexicalType.EXACT_SYNONYM, "", 0.85);
            }
            index++;
        }
    }
    lexicon.save("store/knowledge/mesh.lexicon");
}

From source file:ams.AMSDevSerialNumbers.java

/**
 * Loads tested laser devices numbers from XML<br>
 * So user don't need to enter them one more time
 *//*from  www .j av  a 2  s. c  o m*/
private void LoadDevNumsFromXML() {
    try {
        SAXReader reader = new SAXReader();

        String strSerialsFileName = System.getenv("AMS_ROOT") + "/serials.xml";
        URL url = (new java.io.File(strSerialsFileName)).toURI().toURL();

        Document document = reader.read(url);

        Element root = document.getRootElement();

        // iterate through child elements of root
        for (Iterator i = root.elementIterator(); i.hasNext();) {
            Element element = (Element) i.next();
            String name = element.getName();
            String value = element.getText();

            logger.debug("Pairs: [" + name + " : " + value + "]");

            switch (name) {
            case "Device1":
                m_strDev1SerialNumber = value;
                break;
            case "Device2":
                m_strDev2SerialNumber = value;
                break;
            case "Device3":
                m_strDev3SerialNumber = value;
                break;
            case "Device4":
                m_strDev4SerialNumber = value;
                break;
            case "Device5":
                m_strDev5SerialNumber = value;
                break;
            case "Device6":
                m_strDev6SerialNumber = value;
                break;
            case "Device7":
                m_strDev7SerialNumber = value;
                break;
            case "Device8":
                m_strDev8SerialNumber = value;
                break;
            default:
            }
        }
    } catch (MalformedURLException ex) {
        logger.error("MalformedURLException caught while loading serials!", ex);
    } catch (DocumentException ex) {
        logger.error("DocumentException caught while loading serials!", ex);
    }

}

From source file:ams.AMSSettings.java

/**
 * ?  ?  .xml /*w  w w.  j a va2s.  c  o  m*/
 * @return 
 * true  -   ?
 * false -   ? 
 */
public boolean LoadSettings() {
    boolean bResOk = true;
    try {
        SAXReader reader = new SAXReader();

        String strSettingsFilePathName = System.getenv("AMS_ROOT") + "/settings.xml";
        URL url = (new java.io.File(strSettingsFilePathName)).toURI().toURL();

        Document document = reader.read(url);

        Element root = document.getRootElement();

        // iterate through child elements of root
        for (Iterator i = root.elementIterator(); i.hasNext();) {
            Element element = (Element) i.next();
            String name = element.getName();
            String value = element.getText();

            //logger.debug( "Pairs: [" + name + " : " + value + "]");

            if ("COM_Port".equals(name))
                m_pCOMPortSettings.SetPort(value);

            if ("COM_Baudrate".equals(name))
                m_pCOMPortSettings.SetBaudRate(Integer.parseInt(value));

            if ("COM_DataBits".equals(name)) {
                switch (value) {
                case "5":
                    m_pCOMPortSettings.SetDataBits(SerialPort.DATABITS_5);
                    break;
                case "6":
                    m_pCOMPortSettings.SetDataBits(SerialPort.DATABITS_6);
                    break;
                case "7":
                    m_pCOMPortSettings.SetDataBits(SerialPort.DATABITS_7);
                    break;
                case "8":
                    m_pCOMPortSettings.SetDataBits(SerialPort.DATABITS_8);
                    break;
                default:
                    logger.warn("Unknown COM_DataBits value '" + value + "' in settings.xml! Using default!");
                    bResOk = false;
                    break;
                }
            }

            if ("COM_Parity".equals(name)) {
                switch (value) {
                case "None":
                    m_pCOMPortSettings.SetParity(SerialPort.PARITY_NONE);
                    break;
                case "Odd":
                    m_pCOMPortSettings.SetParity(SerialPort.PARITY_ODD);
                    break;
                case "Even":
                    m_pCOMPortSettings.SetParity(SerialPort.PARITY_EVEN);
                    break;
                case "Mark":
                    m_pCOMPortSettings.SetParity(SerialPort.PARITY_MARK);
                    break;
                case "Space":
                    m_pCOMPortSettings.SetParity(SerialPort.PARITY_SPACE);
                    break;
                default:
                    logger.warn("Unknown COM_Parity value '" + value + "' in settings.xml! Using default!");
                    bResOk = false;
                    break;
                }
            }

            if ("COM_StopBits".equals(name)) {
                switch (value) {
                case "1":
                    m_pCOMPortSettings.SetStopBits(SerialPort.STOPBITS_1);
                    break;
                case "2":
                    m_pCOMPortSettings.SetParity(SerialPort.STOPBITS_2);
                    break;
                default:
                    logger.warn("Unknown COM_StopBits value '" + value + "' in settings.xml! Using default!");
                    bResOk = false;
                    break;
                }
            }

            if ("Devices".equals(name)) {
                for (Iterator andevsparams = element.elementIterator(); andevsparams.hasNext();) {

                    Element elementAnDev = (Element) andevsparams.next();
                    name = elementAnDev.getName();
                    value = elementAnDev.getText();

                    //logger.debug( "Pairs: Devices.[" + name + " : " + value + "]");

                    boolean bOk = true;
                    try {
                        Integer.parseInt(value, 16);
                    } catch (NumberFormatException e) {
                        logger.error("Param Anode_devices." + name + " is not a valid hex-number [" + value
                                + "]! using default!");
                        bOk = false;
                        bResOk = false;
                    }

                    if (bOk) {
                        switch (name) {
                        case "ADC1":
                            m_strADC1Address = value;
                            break;
                        case "ADC2":
                            m_strADC2Address = value;
                            break;
                        case "DAC1":
                            m_strDAC1Address = value;
                            break;
                        case "DAC2":
                            m_strDAC2Address = value;
                            break;
                        case "REL1":
                            m_strREL1Address = value;
                            break;
                        case "ADC3":
                            m_strADC3Address = value;
                            break;
                        case "ADC4":
                            m_strADC4Address = value;
                            break;
                        case "DAC3":
                            m_strDAC3Address = value;
                            break;
                        case "DAC4":
                            m_strDAC4Address = value;
                            break;
                        case "REL2":
                            m_strREL2Address = value;
                            break;
                        default:
                            logger.warn("Unknown param Device.'" + name + "' in settings.xml! Pay attention!");
                            bResOk = false;
                        }
                    }
                }
            }

            if ("Device0_channels".equals(name))
                bResOk = ParseDeviceBlock(AMSConstants.T_DEVICE1, element) & bResOk;
            if ("Device1_channels".equals(name))
                bResOk = ParseDeviceBlock(AMSConstants.T_DEVICE2, element) & bResOk;
            if ("Device2_channels".equals(name))
                bResOk = ParseDeviceBlock(AMSConstants.T_DEVICE3, element) & bResOk;
            if ("Device3_channels".equals(name))
                bResOk = ParseDeviceBlock(AMSConstants.T_DEVICE4, element) & bResOk;
            if ("Device4_channels".equals(name))
                bResOk = ParseDeviceBlock(AMSConstants.T_DEVICE5, element) & bResOk;
            if ("Device5_channels".equals(name))
                bResOk = ParseDeviceBlock(AMSConstants.T_DEVICE6, element) & bResOk;
            if ("Device6_channels".equals(name))
                bResOk = ParseDeviceBlock(AMSConstants.T_DEVICE7, element) & bResOk;
            if ("Device7_channels".equals(name))
                bResOk = ParseDeviceBlock(AMSConstants.T_DEVICE8, element) & bResOk;

        }

        /*
        // iterate through child elements of root with element name "foo"
        for ( Iterator i = root.elementIterator( "foo" ); i.hasNext(); ) {
        Element foo = (Element) i.next();
        // do something
        }
                
        // iterate through attributes of root 
        for ( Iterator i = root.attributeIterator(); i.hasNext(); ) {
        Attribute attribute = (Attribute) i.next();
        // do something
        }
        */

    } catch (MalformedURLException ex) {
        logger.error("MalformedURLException caught while loading settings!", ex);
        bResOk = false;
    } catch (DocumentException ex) {
        logger.error("DocumentException caught while loading settings!", ex);
        bResOk = false;
    }

    return bResOk;
}

From source file:ams.devices.AMSCalibration.java

public boolean LoadCalibration() {
    boolean bResOk = true;
    try {/*from w  w w. j av a 2s.  com*/
        SAXReader reader = new SAXReader();

        String strCalibrationFilePathName = System.getenv("AMS_ROOT") + "/calibration.xml";
        URL url = (new java.io.File(strCalibrationFilePathName)).toURI().toURL();

        Document document = reader.read(url);

        Element root = document.getRootElement();

        // iterate through child elements of root
        for (Iterator i = root.elementIterator(); i.hasNext();) {
            Element element = (Element) i.next();
            String name = element.getName();
            String value = element.getText();

            //logger.debug( "LoadCalibration(): Pairs: [" + name + " : " + value + "]");

            if ("ADC1".equals(name)) {
                for (Iterator andevsparams = element.elementIterator(); andevsparams.hasNext();) {

                    Element elementAnDev = (Element) andevsparams.next();
                    name = elementAnDev.getName();
                    value = elementAnDev.getText();

                    logger.debug("LoadCalibration(): Pairs: ADC1: [" + name + " : " + value + "]");

                    String strKind = name.substring(7, 8);
                    String strChannel = name.substring(5, 6);
                    int nChannel = -1;
                    boolean bOk = true;
                    try {
                        nChannel = Integer.parseInt(strChannel, 10);
                    } catch (NumberFormatException e) {
                        logger.error("LoadCalibration(): Strange channel number '" + strChannel
                                + "' has been extracted from name " + name);
                        bOk = false;
                        bResOk = false;
                    }

                    Double dblValue = null;
                    try {
                        value = value.replace(',', '.');
                        dblValue = new Double(value);
                    } catch (NumberFormatException ex) {
                        logger.error("LoadCalibration(): NumberFormatException caught while parsing value '"
                                + value + "'");
                        bOk = false;
                        bResOk = false;
                    }

                    if (bOk) {
                        AMSCalibrationUnit unit = (AMSCalibrationUnit) m_mapCalibrationUnits
                                .get(AMSConstants.ADC1);
                        if (unit != null) {
                            if (strKind.equals("A"))
                                unit.SetSlope(nChannel, dblValue);
                            else if (strKind.equals("B"))
                                unit.SetShift(nChannel, dblValue);
                            else {
                                logger.warn("Unknown Kind  of param'" + strKind + "' from name '" + name
                                        + "' in calibration.xml! Pay attention!");
                                bResOk = false;
                            }
                        } else {
                            logger.error(
                                    "Unit ? ADC1   m_mapCalibrationUnits  null!");
                            bResOk = false;
                        }
                    }
                }
            }

            if ("ADC2".equals(name)) {
                for (Iterator andevsparams = element.elementIterator(); andevsparams.hasNext();) {

                    Element elementAnDev = (Element) andevsparams.next();
                    name = elementAnDev.getName();
                    value = elementAnDev.getText();

                    logger.debug("LoadCalibration(): Pairs: ADC2: [" + name + " : " + value + "]");

                    String strKind = name.substring(7, 8);
                    String strChannel = name.substring(5, 6);
                    int nChannel = -1;
                    boolean bOk = true;
                    try {
                        nChannel = Integer.parseInt(strChannel, 10);
                    } catch (NumberFormatException e) {
                        logger.error("LoadCalibration(): Strange channel number '" + strChannel
                                + "' has been extracted from name " + name);
                        bOk = false;
                        bResOk = false;
                    }

                    Double dblValue = null;
                    try {
                        value = value.replace(',', '.');
                        dblValue = new Double(value);
                    } catch (NumberFormatException ex) {
                        logger.error("LoadCalibration(): NumberFormatException caught while parsing value '"
                                + value + "'");
                        bOk = false;
                        bResOk = false;
                    }

                    if (bOk) {
                        AMSCalibrationUnit unit = (AMSCalibrationUnit) m_mapCalibrationUnits
                                .get(AMSConstants.ADC2);
                        if (unit != null) {

                            if (strKind.equals("A"))
                                unit.SetSlope(nChannel, dblValue);
                            else if (strKind.equals("B"))
                                unit.SetShift(nChannel, dblValue);
                            else {
                                logger.warn("Unknown Kind  of param'" + strKind + "' from name '" + name
                                        + "' in calibration.xml! Pay attention!");
                                bResOk = false;
                            }
                        } else {
                            logger.error(
                                    "Unit ? ADC2   m_mapCalibrationUnits  null!");
                            bResOk = false;
                        }
                    }
                }
            }

            if ("ADC3".equals(name)) {
                for (Iterator andevsparams = element.elementIterator(); andevsparams.hasNext();) {

                    Element elementAnDev = (Element) andevsparams.next();
                    name = elementAnDev.getName();
                    value = elementAnDev.getText();

                    logger.debug("LoadCalibration(): Pairs: ADC3. [" + name + " : " + value + "]");

                    String strKind = name.substring(7, 8);
                    String strChannel = name.substring(5, 6);
                    int nChannel = -1;
                    boolean bOk = true;
                    try {
                        nChannel = Integer.parseInt(strChannel, 10);
                    } catch (NumberFormatException e) {
                        logger.error("LoadCalibration(): Strange channel number '" + strChannel
                                + "' has been extracted from name " + name);
                        bOk = false;
                        bResOk = false;
                    }

                    Double dblValue = null;
                    try {
                        value = value.replace(',', '.');
                        dblValue = new Double(value);
                    } catch (NumberFormatException ex) {
                        logger.error("LoadCalibration(): NumberFormatException caught while parsing value '"
                                + value + "'");
                        bOk = false;
                        bResOk = false;
                    }

                    if (bOk) {
                        AMSCalibrationUnit unit = (AMSCalibrationUnit) m_mapCalibrationUnits
                                .get(AMSConstants.ADC3);
                        if (unit != null) {

                            if (strKind.equals("A"))
                                unit.SetSlope(nChannel, dblValue);
                            else if (strKind.equals("B"))
                                unit.SetShift(nChannel, dblValue);
                            else {
                                logger.warn("Unknown Kind  of param'" + strKind + "' from name '" + name
                                        + "' in calibration.xml! Pay attention!");
                                bResOk = false;
                            }
                        } else {
                            logger.error(
                                    "Unit ? ADC3   m_mapCalibrationUnits  null!");
                            bResOk = false;
                        }
                    }
                }
            }

            if ("ADC4".equals(name)) {
                for (Iterator andevsparams = element.elementIterator(); andevsparams.hasNext();) {

                    Element elementAnDev = (Element) andevsparams.next();
                    name = elementAnDev.getName();
                    value = elementAnDev.getText();

                    logger.debug("LoadCalibration(): Pairs: ADC4: [" + name + " : " + value + "]");

                    String strKind = name.substring(7, 8);
                    String strChannel = name.substring(5, 6);
                    int nChannel = -1;
                    boolean bOk = true;
                    try {
                        nChannel = Integer.parseInt(strChannel, 10);
                    } catch (NumberFormatException e) {
                        logger.error("LoadCalibration(): Strange channel number '" + strChannel
                                + "' has been extracted from name " + name);
                        bOk = false;
                        bResOk = false;
                    }

                    Double dblValue = null;
                    try {
                        value = value.replace(',', '.');
                        dblValue = new Double(value);
                    } catch (NumberFormatException ex) {
                        logger.error("LoadCalibration(): NumberFormatException caught while parsing value '"
                                + value + "'");
                        bOk = false;
                        bResOk = false;
                    }

                    if (bOk) {
                        AMSCalibrationUnit unit = (AMSCalibrationUnit) m_mapCalibrationUnits
                                .get(AMSConstants.ADC4);
                        if (unit != null) {

                            if (strKind.equals("A"))
                                unit.SetSlope(nChannel, dblValue);
                            else if (strKind.equals("B"))
                                unit.SetShift(nChannel, dblValue);
                            else {
                                logger.warn("Unknown Kind  of param'" + strKind + "' from name '" + name
                                        + "' in calibration.xml! Pay attention!");
                                bResOk = false;
                            }
                        } else {
                            logger.error(
                                    "Unit ? ADC4   m_mapCalibrationUnits  null!");
                            bResOk = false;
                        }
                    }
                }
            }

        }

    } catch (MalformedURLException ex) {
        logger.error("MalformedURLException caught while loading settings!", ex);
        bResOk = false;
    } catch (DocumentException ex) {
        logger.error("DocumentException caught while loading settings!", ex);
        bResOk = false;
    }

    return bResOk;
}

From source file:architecture.common.lifecycle.internal.XmlApplicationPropertiesOld.java

License:Apache License

public XmlApplicationPropertiesOld(File fileToUse) throws IOException {

    propertyCache = new HashMap<String, String>();

    lock = new ReentrantLock();

    file = fileToUse;//from  ww  w .  jav a  2s  . c o m

    if (!file.exists()) {
        File tempFile = new File(file.getParentFile(),
                (new StringBuilder()).append(file.getName()).append(".tmp").toString());

        log.debug(tempFile.getAbsolutePath());

        if (tempFile.exists()) {
            log.error((new StringBuilder()).append("WARNING: ").append(file.getName())
                    .append(" was not found, but temp file from ")
                    .append("previous write operation was. Attempting automatic recovery. Please ")
                    .append("check file for data consistency.").toString());
            tempFile.renameTo(file);
        } else {
            throw new FileNotFoundException((new StringBuilder()).append("XML properties file does not exist: ")
                    .append(file.getName()).toString());
        }
    } else {
        File tempFile = new File(file.getParentFile(),
                (new StringBuilder()).append(file.getName()).append(".tmp").toString());
        if (tempFile.exists()) {
            log.error((new StringBuilder()).append("WARNING: found a temp file: ").append(tempFile.getName())
                    .append(". This may ")
                    .append("indicate that a previous write operation failed. Attempting automatic ")
                    .append("recovery. Please check file ").append(file.getName())
                    .append(" for data consistency.").toString());
            if (tempFile.lastModified() > file.lastModified()) {
                boolean error = false;
                Reader reader = null;
                try {
                    reader = new InputStreamReader(new FileInputStream(tempFile),
                            ApplicationConstants.DEFAULT_CHAR_ENCODING);
                    SAXReader xmlReader = new SAXReader();
                    xmlReader.read(reader);
                } catch (Exception e) {
                    error = true;
                } finally {
                    try {
                        reader.close();
                    } catch (Exception e) {
                    }
                }
                if (error) {
                    String bakFile = (new StringBuilder()).append(tempFile.getName()).append("-")
                            .append(System.currentTimeMillis()).append(".bak").toString();
                    tempFile.renameTo(new File(tempFile.getParentFile(), bakFile));
                } else {
                    String bakFile = (new StringBuilder()).append(file.getName()).append("-")
                            .append(System.currentTimeMillis()).append(".bak").toString();
                    file.renameTo(new File(file.getParentFile(), bakFile));
                    try {
                        Thread.sleep(100L);
                    } catch (Exception e) {
                    }
                    tempFile.renameTo(file);
                }
            } else {
                boolean error = false;
                Reader reader = null;
                try {
                    reader = new InputStreamReader(new FileInputStream(file),
                            ApplicationConstants.DEFAULT_CHAR_ENCODING);
                    SAXReader xmlReader = new SAXReader();
                    xmlReader.read(reader);
                } catch (Exception e) {
                    error = true;
                } finally {
                    try {
                        reader.close();
                    } catch (Exception e) {
                    }
                }
                if (error) {
                    String bakFileName = (new StringBuilder()).append(file.getName()).append("-")
                            .append(System.currentTimeMillis()).append(".bak").toString();
                    File bakFile = new File(file.getParentFile(), bakFileName);
                    file.renameTo(bakFile);
                    try {
                        Thread.sleep(100L);
                    } catch (Exception e) {
                    }
                    tempFile.renameTo(file);
                } else {
                    String bakFile = (new StringBuilder()).append(tempFile.getName()).append("-")
                            .append(System.currentTimeMillis()).append(".bak").toString();
                    tempFile.renameTo(new File(tempFile.getParentFile(), bakFile));
                }
            }
        }
    }
    if (!file.canRead())
        throw new IOException((new StringBuilder()).append("XML properties file must be readable: ")
                .append(file.getName()).toString());
    if (!file.canWrite())
        throw new IOException((new StringBuilder()).append("XML properties file must be writable: ")
                .append(file.getName()).toString());

    Reader reader = null;
    try {
        reader = new InputStreamReader(new FileInputStream(file), ApplicationConstants.DEFAULT_CHAR_ENCODING);
        buildDoc(reader);
    } catch (Exception e) {
        log.error((new StringBuilder()).append("Error creating XML properties file ").append(file.getName())
                .append(": ").append(e.getMessage()).toString());
        throw new IOException(e.getMessage());
    } finally {
        try {
            reader.close();
        } catch (Exception e) {
            log.debug(e.getMessage(), e);
        }
    }
}

From source file:architecture.common.lifecycle.internal.XmlApplicationPropertiesOld.java

License:Apache License

private void buildDoc(Reader in) throws Exception {
    SAXReader xmlReader = new SAXReader();
    doc = xmlReader.read(in);
}

From source file:architecture.common.xml.XmlProperties.java

License:Apache License

/**
 * Builds the document XML model up based the given reader of XML data.
 * /* ww  w  .  j av a2s  . c  o  m*/
 * @param in
 *            the input stream used to build the xml document
 * @throws java.io.IOException
 *             thrown when an error occurs reading the input stream.
 */
private void buildDoc(Reader in) throws IOException {
    try {
        SAXReader xmlReader = new SAXReader();
        xmlReader.setEncoding("UTF-8");
        document = xmlReader.read(in);
    } catch (Exception e) {
        log.error("Error reading XML properties", e);
        throw new IOException(e.getMessage());
    } finally {
        if (in != null) {
            in.close();
        }
    }
}

From source file:au.com.acegi.xmlformat.FormatUtil.java

License:Apache License

/**
 * Ingest an input stream, writing formatted XML to the output stream. The
 * caller is responsible for closing the input and output streams. Any errors
 * in the input stream will cause an exception and the output stream should
 * not be relied upon./*  w  ww.j a  v  a  2  s .  c  o m*/
 *
 * @param in  input XML stream
 * @param out output XML stream
 * @param fmt format configuration to apply
 * @throws DocumentException if input XML could not be parsed
 * @throws IOException       if output XML stream could not be written
 */
static void format(final InputStream in, final OutputStream out, final OutputFormat fmt)
        throws DocumentException, IOException {
    final SAXReader reader = new SAXReader();
    reader.setEntityResolver(new EntityResolver() {
        @Override
        public InputSource resolveEntity(final String publicId, final String systemId)
                throws SAXException, IOException {
            return new InputSource(new StringReader(""));
        }
    });
    final Document xmlDoc = reader.read(in);

    final XMLWriter xmlWriter = new XMLWriter(out, fmt);
    xmlWriter.write(xmlDoc);
    xmlWriter.flush();
}

From source file:au.edu.usq.fascinator.harvester.fedora.FedoraDatastream.java

License:Open Source License

public Element getContentAsXml() throws IOException {
    Element elem = null;/*from   ww w .ja va2s.  c  o m*/
    SAXReader reader = new SAXReader();
    try {
        Document doc = reader.read(getContentAsStream());
        elem = doc.getRootElement();
    } catch (Exception e) {
        throw new IOException(e.getMessage());
    }
    return elem;
}

From source file:au.edu.usq.fascinator.harvester.fedora.FedoraItem.java

License:Open Source License

public Element getMetadata() {
    Element elem = null;/*from www  . j  a v  a2s. c  om*/
    SAXReader reader = new SAXReader();
    try {
        String metadata = getMetadataAsString();
        Document doc = reader.read(new ByteArrayInputStream(metadata.getBytes("UTF-8")));
        elem = doc.getRootElement();
    } catch (UnsupportedEncodingException uee) {
        log.warn(uee);
    } catch (DocumentException de) {
        log.warn(de);
    }
    return elem;
}