jaxp/src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerFactoryImpl.java
--- a/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerFactoryImpl.java Wed Jul 05 18:46:58 2017 +0200
+++ b/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerFactoryImpl.java Mon Feb 18 11:33:35 2013 -0800
@@ -73,7 +73,7 @@
import com.sun.org.apache.xalan.internal.xsltc.dom.XSLTCDTMManager;
import com.sun.org.apache.xalan.internal.utils.ObjectFactory;
import com.sun.org.apache.xalan.internal.utils.FactoryImpl;
-
+import com.sun.org.apache.xalan.internal.utils.SecuritySupport;
import org.xml.sax.InputSource;
import org.xml.sax.XMLFilter;
@@ -881,8 +881,14 @@
// Check that the transformation went well before returning
if (bytecodes == null) {
- ErrorMsg err = new ErrorMsg(ErrorMsg.JAXP_COMPILE_ERR);
- TransformerConfigurationException exc = new TransformerConfigurationException(err.toString());
+ Vector errs = xsltc.getErrors();
+ ErrorMsg err = null;
+ if (errs != null) {
+ err = (ErrorMsg)errs.get(errs.size()-1);
+ } else {
+ err = new ErrorMsg(ErrorMsg.JAXP_COMPILE_ERR);
+ }
+ TransformerConfigurationException exc = new TransformerConfigurationException(err.toString(), err.getCause());
// Pass compiler errors to the error listener
if (_errorListener != null) {
@@ -1229,7 +1235,7 @@
// Find the parent directory of the translet.
String transletParentDir = transletFile.getParent();
if (transletParentDir == null)
- transletParentDir = System.getProperty("user.dir");
+ transletParentDir = SecuritySupport.getSystemProperty("user.dir");
File transletParentFile = new File(transletParentDir);