Applyingschema fix from Sandy Gao. Thanks Sandy.o
git-svn-id: https://svn.apache.org/repos/asf/xerces/java/branches/jaxp_1_2_3_branch@319787 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/org/apache/xerces/impl/xs/XMLSchemaLoader.java b/src/org/apache/xerces/impl/xs/XMLSchemaLoader.java
index 2d39a71..a54f92f 100644
--- a/src/org/apache/xerces/impl/xs/XMLSchemaLoader.java
+++ b/src/org/apache/xerces/impl/xs/XMLSchemaLoader.java
@@ -563,24 +563,8 @@
// as xsi:schemaLocation
XSAttributeDecl attrDecl = SchemaGrammar.SG_XSI.getGlobalAttributeDecl(SchemaSymbols.XSI_SCHEMALOCATION);
// validation the string value to get the list of URI's
- Object actualValue = attrDecl.fType.validate(sl, null, null);
- Object[] uris = (Object[])actualValue;
- // if there are even number of URI's
- // add them to the location pairs
- if (uris.length % 2 == 0) {
- String namespace, location;
- for (int i = 0; i < uris.length;) {
- namespace = (String)uris[i++];
- location = (String)uris[i++];
- LocationArray la = ((LocationArray)locations.get(namespace));
- if(la == null) {
- la = new LocationArray();
- locations.put(namespace, la);
- }
- la.addLocation(location);
- }
- }
- else {
+ attrDecl.fType.validate(sl, null, null);
+ if (!tokenizeSchemaLocationStr(sl, locations)) {
// report warning (odd number of items)
er.reportError(XSMessageFormatter.SCHEMA_DOMAIN,
"SchemaLocation",