docs: public static SAXParser newSAXParser(final boolean setNamespaceAware, final boolean setValidating) throws FactoryConfigurationError, ParserConfigurationException, SAXException {
          try {
              return (SAXParser) AccessController.doPrivileged(new PrivilegedExceptionAction() {
                  public Object run() throws ParserConfigurationException, SAXException, FactoryConfigurationError {
                      Thread currThread = Thread.currentThread();
                      ClassLoader oldLoader = currThread.getContextClassLoader();
                      currThread.setContextClassLoader(ParserFactory.class.getClassLoader());
                      try {
                          if (!setNamespaceAware && !setValidating) {
                              return SAXParserFactory.newInstance().newSAXParser();
                          } else {
                              final SAXParserFactory factory = SAXParserFactory.newInstance();
                              factory.setNamespaceAware(setNamespaceAware);
                              factory.setValidating(setValidating);
                              return factory.newSAXParser();
                          }
                      }
                                          finally {
                                              currThread.setContextClassLoader(oldLoader);
                                          }
                                      }
              });
          } catch (PrivilegedActionException pae) {
              Throwable t = pae.getCause();
              if (t instanceof FactoryConfigurationError) {
                  throw (FactoryConfigurationError) t;
              } else if (t instanceof ParserConfigurationException) {
                  throw (ParserConfigurationException) t;
              } else if (t instanceof SAXException) {
                  throw (SAXException) t;
              }
          }
          return null;
      }