protected Ini getServletContextIniResource(String servletContextPath) {
        String path = WebUtils.normalize(servletContextPath);
        if (getServletContext() != null) {
            InputStream is = getServletContext().getResourceAsStream(path);
            if (is != null) {
                Ini ini = new Ini();
                ini.load(is);
                if (CollectionUtils.isEmpty(ini)) {
                    LOGGER.warn("ServletContext INI resource '" + servletContextPath + "' exists, but it did not contain "
                            + "any data.");
                }
                return ini;
            }
        }
        return null;
    }
Returns the INI instance reflecting the specified servlet context resource path or {@code null} if no
resource was found.

@param servletContextPath the servlet context resource path of the INI file to load
@return the INI instance reflecting the specified servlet context resource path or {@code null} if no
resource was found.
@since 1.2
web/src/main/java/org/apache/shiro/web/servlet/IniShiroFilter.java