Example usage for com.liferay.portal.xml StAXReaderUtil getXMLInputFactory

List of usage examples for com.liferay.portal.xml StAXReaderUtil getXMLInputFactory

Introduction

In this page you can find the example usage for com.liferay.portal.xml StAXReaderUtil getXMLInputFactory.

Prototype

public static XMLInputFactory getXMLInputFactory() 

Source Link

Usage

From source file:com.liferay.portlet.blogs.util.LinkbackProducerUtil.java

License:Open Source License

public static boolean sendTrackback(String trackback, Map<String, String> parts) throws Exception {

    if (_log.isInfoEnabled()) {
        _log.info("Pinging trackback " + trackback);
    }/*w  ww.  ja  v a2  s  .c om*/

    Http.Options options = new Http.Options();

    options.addHeader(HttpHeaders.USER_AGENT, ReleaseInfo.getServerInfo());
    options.setLocation(trackback);
    options.setParts(parts);
    options.setPost(true);

    String xml = HttpUtil.URLtoString(options);

    if (_log.isDebugEnabled()) {
        _log.debug(xml);
    }

    String error = xml;

    XMLStreamReader xmlStreamReader = null;

    try {
        XMLInputFactory xmlInputFactory = StAXReaderUtil.getXMLInputFactory();

        xmlStreamReader = xmlInputFactory.createXMLStreamReader(new UnsyncStringReader(xml));

        xmlStreamReader.nextTag();
        xmlStreamReader.nextTag();

        String name = xmlStreamReader.getLocalName();

        if (name.equals("error")) {
            int status = GetterUtil.getInteger(xmlStreamReader.getElementText(), 1);

            if (status == 0) {
                if (_log.isInfoEnabled()) {
                    _log.info("Trackback accepted");
                }

                return true;
            }

            xmlStreamReader.nextTag();

            name = xmlStreamReader.getLocalName();

            if (name.equals("message")) {
                error = xmlStreamReader.getElementText();
            }
        }
    } finally {
        if (xmlStreamReader != null) {
            try {
                xmlStreamReader.close();
            } catch (Exception e) {
            }
        }
    }

    _log.error("Error while pinging trackback at " + trackback + ": " + error);

    return false;
}

From source file:com.liferay.portlet.PortletPreferencesFactoryImpl.java

License:Open Source License

protected void populateMap(String xml, Map<String, Preference> preferencesMap) throws SystemException {

    if (Validator.isNull(xml)) {
        return;//from www .  ja v  a2s .  co m
    }

    XMLEventReader xmlEventReader = null;

    try {
        XMLInputFactory xmlInputFactory = StAXReaderUtil.getXMLInputFactory();

        xmlEventReader = xmlInputFactory.createXMLEventReader(new UnsyncStringReader(xml));

        while (xmlEventReader.hasNext()) {
            XMLEvent xmlEvent = xmlEventReader.nextEvent();

            if (xmlEvent.isStartElement()) {
                StartElement startElement = xmlEvent.asStartElement();

                String elementName = startElement.getName().getLocalPart();

                if (elementName.equals("preference")) {
                    Preference preference = readPreference(xmlEventReader);

                    preferencesMap.put(preference.getName(), preference);
                }
            }
        }
    } catch (XMLStreamException xse) {
        throw new SystemException(xse);
    } finally {
        if (xmlEventReader != null) {
            try {
                xmlEventReader.close();
            } catch (XMLStreamException xse) {
            }
        }
    }
}