> Templates templates = tFactory.newTemplates(new StreamSource(is)); That line is your problem. If you hand us a stream, we're past the point where we can find out the base URI and use it to guide the includes. The easiest way to fix this is to use one of the constructors for StreamSource which allows you to specify the System ID or file name.
Working as designed.
