Hi Lance, Chris,
Looking at the affected class [1], and the error stack trace [2] , it
appeared that in SAXParserImpl$JAXPSAXParser , line 545,
fSAXParser.fSecurityPropertyMgr is null when setProperty is called.
fSecurityPropertyMgr was instantiated in SAXParserImpl's constructor
after JAXPSAXParser was. I can see a chance where the NetBeans got a
copy of JAXPSAXParser instance with fSecurityPropertyMgr not
initialized. The fix is to remove the reference of fSecurityPropertyMgr
in JAXPSAXParser, and pass it in when JAXPSAXParser is created.
Here is the webrev:
http://cr.openjdk.java.net/~joehw/7u40/8021148/webrev/
[1]
http://cr.openjdk.java.net/~joehw/7u40/8021148/webrev/src/com/sun/org/apache/xerces/internal/jaxp/SAXParserImpl.java.html
[2]
Caused by: java.lang.NullPointerException
at
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.access$300(SAXParserImpl.java:69)
at
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.setProperty(SAXParserImpl.java:545)
at
com.sun.org.apache.xml.internal.utils.XMLReaderManager.getXMLReader(XMLReaderManager.java:161)
at
com.sun.org.apache.xml.internal.dtm.ref.DTMManagerDefault.getXMLReader(DTMManagerDefault.java:613)
at
com.sun.org.apache.xalan.internal.xsltc.dom.XSLTCDTMManager.getDTM(XSLTCDTMManager.java:401)
at
com.sun.org.apache.xalan.internal.xsltc.dom.XSLTCDTMManager.getDTM(XSLTCDTMManager.java:252)
at
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.getDOM(TransformerImpl.java:559)
... 43 more
---------
javax.xml.transform.TransformerException: java.lang.NullPointerException
at
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.getDOM(TransformerImpl.java:581)
at
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:742)
at
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:353)
at
org.netbeans.spi.project.support.ant.GeneratedFilesHelper$1$1.run(GeneratedFilesHelper.java:332)
Thanks,
Joe