protected Pair<XMLConfiguration, URL> createXmlConfiguration(String fileName) { List<Lookup> lookups = Arrays.asList(new SystemPropertiesLookup(), new HomeLookup(), new ConfigLookup()); Parameters params = new Parameters(); FallbackBasePathLocationStrategy locationStrategy = new FallbackBasePathLocationStrategy(FileLocatorUtils.DEFAULT_LOCATION_STRATEGY, home); FileBasedConfigurationBuilder<XMLConfiguration> builder = new FileBasedConfigurationBuilder<>(XMLConfiguration.class) .configure(params.xml().setDefaultLookups(lookups).setLocationStrategy(locationStrategy).setFileName(fileName) .setSchemaValidation(true).setEntityResolver(new ResourceSchemaResolver())); try { XMLConfiguration xmlConfiguration = builder.getConfiguration(); return new ImmutablePair<>(xmlConfiguration, locationStrategy.getLocatedUrl()); } catch (ConfigurationException e) { throw new ConfigException(e); } }