[jboss-jira] [JBoss JIRA] Created: (JBPM-858) Avoid repeat SAXParserFactory instantiation

Johan Parent (JIRA) jira-events at lists.jboss.org
Thu Mar 1 09:33:12 EST 2007


Avoid repeat SAXParserFactory instantiation
-------------------------------------------

                 Key: JBPM-858
                 URL: http://jira.jboss.com/jira/browse/JBPM-858
             Project: JBoss jBPM
          Issue Type: Patch
          Components: Core Engine
    Affects Versions: jBPM 3.1.4
         Environment: XP, jdk1.4, jBPM-3.1.4
            Reporter: Johan Parent
         Assigned To: Tom Baeyens
            Priority: Minor


Repeated instantiation of a SAXParserFactory object is both unnessary and results in many lookup for system properties which are not present. Hence causing extra work and I/O.

Simple patch to JpdlParser.java should fix this. WARNING: could not test this code

..............
public class JpdlParser implements Serializable {
       private static final long serialVersionUID = 1L;
       static final EntityResolver JPDL_ENTITY_RESOLVER = new JpdlEntityResolver();

        //
	// Avoid repeated instantiation of SAXParserFactory, especially the expensive FactoryFinder.find() 
	// calls it implies. Define factory as static and init in static block
	//
        private static SAXParserFactory saxParserFactory;
        .......................
	static {
		    saxParserFactory = SAXParserFactory.newInstance();
   		    saxParserFactory.setValidating(true);
		    saxParserFactory.setNamespaceAware(true);
	}

        .................
       public static XMLReader createXmlReader() throws Exception {
	/*
        SAXParserFactory saxParserFactory = SAXParserFactory.newInstance();
	saxParserFactory.setValidating(true);
        saxParserFactory.setNamespaceAware(true);
	*/
       SAXParser saxParser = saxParserFactory.newSAXParser();
       XMLReader xmlReader = saxParser.getXMLReader();
        .................


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list