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

Tom Baeyens (JIRA) jira-events at lists.jboss.org
Mon Apr 16 06:28:59 EDT 2007


     [ http://jira.jboss.com/jira/browse/JBPM-858?page=all ]

Tom Baeyens closed JBPM-858.
----------------------------

    Fix Version/s:  jBPM jPDL 3.2.1
       Resolution: Done

applied similar fix to the one you describe

> 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
>             Fix For:  jBPM jPDL 3.2.1
>
>
> 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