else if ((new File(systemId)).exists()) { input = new InputSource( new File(systemId).toURL().toExternalForm()); }
else input = new InputSource(systemId);
    private InputSource getInputSource(XSLTC xsltc, Source source)	throws TransformerConfigurationException {	InputSource input = null;	String systemId = source.getSystemId();	if (systemId == null) {	    systemId = "";	}	try {	    // Try to get InputSource from SAXSource input	    if (source instanceof SAXSource) {		final SAXSource sax = (SAXSource)source;		input = sax.getInputSource();		// Pass the SAX parser to the compiler		xsltc.setXMLReader(sax.getXMLReader());	    }	    // handle  DOMSource  	    else if (source instanceof DOMSource) {		final DOMSource domsrc = (DOMSource)source;		final Document dom = (Document)domsrc.getNode();		final DOM2SAX dom2sax = new DOM2SAX(dom);		xsltc.setXMLReader(dom2sax);  	        // try to get SAX InputSource from DOM Source.		input = SAXSource.sourceToInputSource(source);	    }	    // Try to get InputStream or Reader from StreamSource	    else if (source instanceof StreamSource) {		final StreamSource stream = (StreamSource)source;		final InputStream istream = stream.getInputStream();		final Reader reader = stream.getReader();		// Create InputSource from Reader or InputStream in Source		if (istream != null)		    input = new InputSource(istream);		else if (reader != null)		    input = new InputSource(reader);		else if ((new File(systemId)).exists()) {		    input = new InputSource(			new File(systemId).toURL().toExternalForm());		}	    }	    else {		ErrorMsg err = new ErrorMsg(ErrorMsg.JAXP_UNKNOWN_SOURCE_ERR);		throw new TransformerConfigurationException(err.toString());	    }	    input.setSystemId(systemId);	}	catch (NullPointerException e) { 	    ErrorMsg err = new ErrorMsg(ErrorMsg.JAXP_NO_SOURCE_ERR,					"TransformerFactory.newTemplates()");	    throw new TransformerConfigurationException(err.toString());	}	catch (SecurityException e) { 	    ErrorMsg err = new ErrorMsg(ErrorMsg.FILE_ACCESS_ERR, systemId);	    throw new TransformerConfigurationException(err.toString());	}	catch (MalformedURLException e){ 	    ErrorMsg err = new ErrorMsg(ErrorMsg.FILE_ACCESS_ERR, systemId);	    throw new TransformerConfigurationException(err.toString());	}	finally {	    return(input);	}    }