Example usage for com.liferay.portal.kernel.xml Element getNamespace

List of usage examples for com.liferay.portal.kernel.xml Element getNamespace

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.xml Element getNamespace.

Prototype

public Namespace getNamespace();

Source Link

Usage

From source file:com.liferay.web.extender.internal.WebXMLLoader.java

License:Open Source License

protected static void loadFilters(Bundle bundle, Element root, WebXML webXML) throws Exception {

    Map<String, FilterDefinition> filters = webXML.getFilters();

    for (Element filterMappingsEl : root.elements("filter-mapping")) {
        String filterName = filterMappingsEl.element("filter-name").getTextTrim();
        String urlPattern = filterMappingsEl.element("url-pattern").getTextTrim();

        Map<String, String> namespaces = new TreeMap<String, String>();

        namespaces.put("x", root.getNamespace().getText());

        XPath xPath = SAXReaderUtil.createXPath("//x:filter[x:filter-name/text() ='" + filterName + "']",
                namespaces);/*  www  .j a  v a 2  s  . c o  m*/

        Element filterElement = (Element) xPath.selectSingleNode(root);

        if (filterElement == null) {
            continue;
        }

        if (urlPattern.endsWith("/*") && (urlPattern.length() > 2)) {
            urlPattern = urlPattern.substring(0, urlPattern.length() - 2);
        }

        if (urlPattern.startsWith("*")) {
            urlPattern = "/".concat(urlPattern);
        }

        String filterClass = filterElement.element("filter-class").getTextTrim();

        FilterDefinition filterDefinition = null;

        try {
            Filter filterInstance = (Filter) bundle.loadClass(filterClass).newInstance();

            filterDefinition = new FilterDefinition();

            filterDefinition.setFilter(filterInstance);
            filterDefinition.setName(filterName);
        } catch (Exception e) {
            if (_log.isWarnEnabled()) {
                _log.warn(e.getMessage());
            }

            continue;
        }

        for (Element initParam : filterElement.elements("init-param")) {
            String initParamName = initParam.element("param-name").getTextTrim();
            String initParamValue = initParam.element("param-value").getTextTrim();

            filterDefinition.setInitParam(initParamName, initParamValue);
        }

        filters.put(urlPattern, filterDefinition);
    }
}

From source file:com.liferay.web.extender.internal.WebXMLLoader.java

License:Open Source License

protected static void loadServlets(Bundle bundle, Element root, WebXML webXML) throws Exception {

    Map<String, ServletDefinition> servlets = webXML.getServlets();

    for (Element servletMappingsEl : root.elements("servlet-mapping")) {
        String servletName = servletMappingsEl.element("servlet-name").getTextTrim();
        String urlPattern = servletMappingsEl.element("url-pattern").getTextTrim();

        Map<String, String> namespaces = new TreeMap<String, String>();

        namespaces.put("x", root.getNamespace().getText());

        XPath xPath = SAXReaderUtil.createXPath("//x:servlet[x:servlet-name/text()='" + servletName + "']",
                namespaces);/*w  w  w  .  j  a  v  a 2  s.co  m*/

        Element servletElement = (Element) xPath.selectSingleNode(root);

        if (servletElement == null) {
            continue;
        }

        if (urlPattern.endsWith("/*") && (urlPattern.length() > 2)) {
            urlPattern = urlPattern.substring(0, urlPattern.length() - 2);
        }

        if (urlPattern.startsWith("*.")) {
            urlPattern = "/".concat(urlPattern);
        }

        String servletClass = servletElement.element("servlet-class").getTextTrim();

        ServletDefinition servletDefinition = null;

        try {
            Class<?> clazz = bundle.loadClass(servletClass);

            Servlet servletInstance = (Servlet) clazz.newInstance();

            servletDefinition = new ServletDefinition();

            servletDefinition.setServlet(servletInstance);
            servletDefinition.setName(servletName);
        } catch (Exception e) {
            if (_log.isWarnEnabled()) {
                _log.warn(e.getMessage());
            }

            continue;
        }

        for (Element initParam : servletElement.elements("init-param")) {
            String initParamName = initParam.element("param-name").getTextTrim();
            String initParamValue = initParam.element("param-value").getTextTrim();

            servletDefinition.setInitParam(initParamName, initParamValue);
        }

        servlets.put(urlPattern, servletDefinition);
    }
}