The JBossEntityResolver only looks in the classpath for predetermined filenames.
I've added some code that treats the file as a system id, i.e. a URI
when it is not found in the classpath.
InputStream ins = loadClasspathResource(filename, trace); if( ins != null ) { inputSource = new InputSource(ins); inputSource.setPublicId(publicId); } else { - log.warn("Cannot load publicId from resource: " + filename); + log.trace("Cannot load publicId from classpath resource: " + filename); + // Try the file name as a URI + inputSource = resolveSystemIDasURL(filename, trace); + if (inputSource == null) + log.warn("Cannot load publicId from resource: " + filename); }