public class PluggableSchemaResolver extends Object implements EntityResolver
EntityResolver implementation that attempts to resolve schema URLs into
 local classpath resources using a set of mappings files.
 By default, this class will look for mapping files in the classpath using the
 pattern: META-INF/spring.schemas allowing for multiple files to exist on
 the classpath at any one time.
 
The format of META-INF/spring.schemas is a properties file where each line
 should be of the form systemId=schema-location where schema-location
 should also be a schema file in the classpath. Since systemId is commonly a
 URL, one must be careful to escape any ':' characters which are treated as delimiters
 in properties files.
 
The pattern for the mapping files can be overridden using the
 PluggableSchemaResolver(ClassLoader, String) constructor.
| Modifier and Type | Field and Description | 
|---|---|
| static String | DEFAULT_SCHEMA_MAPPINGS_LOCATIONThe location of the file that defines schema mappings. | 
| Constructor and Description | 
|---|
| PluggableSchemaResolver(ClassLoader classLoader)Loads the schema URL -> schema file location mappings using the default
 mapping file pattern "META-INF/spring.schemas". | 
| PluggableSchemaResolver(ClassLoader classLoader,
                       String schemaMappingsLocation)Loads the schema URL -> schema file location mappings using the given
 mapping file pattern. | 
| Modifier and Type | Method and Description | 
|---|---|
| InputSource | resolveEntity(String publicId,
             String systemId) | 
| String | toString() | 
public static final String DEFAULT_SCHEMA_MAPPINGS_LOCATION
public PluggableSchemaResolver(@Nullable
                               ClassLoader classLoader)
classLoader - the ClassLoader to use for loading
 (can be null) to use the default ClassLoader)PropertiesLoaderUtils.loadAllProperties(String, ClassLoader)public PluggableSchemaResolver(@Nullable
                               ClassLoader classLoader,
                               String schemaMappingsLocation)
classLoader - the ClassLoader to use for loading
 (can be null) to use the default ClassLoader)schemaMappingsLocation - the location of the file that defines schema mappings
 (must not be empty)PropertiesLoaderUtils.loadAllProperties(String, ClassLoader)@Nullable public InputSource resolveEntity(@Nullable String publicId, @Nullable String systemId) throws IOException
resolveEntity in interface EntityResolverIOException