You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by bu...@apache.org on 2001/04/25 01:38:29 UTC

[Bug 1490] New - SAXParserFactory will never check system property "javax.xml.parsers.SAXParserFactory" after the first instance is created

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1490

*** shadow/1490	Tue Apr 24 16:38:29 2001
--- shadow/1490.tmp.22517	Tue Apr 24 16:38:29 2001
***************
*** 0 ****
--- 1,28 ----
+ +============================================================================+
+ | SAXParserFactory will never check system property "javax.xml.parsers.SAXPa |
+ +----------------------------------------------------------------------------+
+ |        Bug #: 1490                        Product: XalanJ2                 |
+ |       Status: NEW                         Version: 2.0.1                   |
+ |   Resolution:                            Platform: All                     |
+ |     Severity: Normal                   OS/Version: All                     |
+ |     Priority: High                      Component: javax.xml               |
+ +----------------------------------------------------------------------------+
+ |  Assigned To: xalan-dev@xml.apache.org                                     |
+ |  Reported By: anton@askjeeves.com                                          |
+ |      CC list: Cc:                                                          |
+ +----------------------------------------------------------------------------+
+ |          URL:                                                              |
+ +============================================================================+
+ |                              DESCRIPTION                                   |
+ The first time SAXParserFactory instance is created by calling 
+ SAXParserFactory.newInstance() method, the found implementation is cached
+ by SAXParserFactory in a private static String variable called "foundFactory". 
+ The next time when newInstance() method is called, the system 
+ property "javax.xml.parsers.SAXParserFactory" will not be read, but instead the 
+ cached value of SAXParserFactory implementation is used to create the instance 
+ of SAXParserFactory. This behaviour is inconsistent with other 2 factories: 
+ DocumentBuilderFactory and TransformerFactory: both of these classes also cache 
+ the class-name of their actual implementations, but the corresponding system 
+ property is checked FIRST, and then if the property is not there, the cached 
+ value is used. This seems to be a more reasonable approach, and the 
+ SAXParserFactory should behave the same way.