You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ws.apache.org by ve...@apache.org on 2011/01/22 21:26:58 UTC

svn commit: r1062259 - in /webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src: main/java/ main/java/org/apache/ws/commons/schema/ test/java/ test/java/tests/ test/test-resources/

Author: veithen
Date: Sat Jan 22 20:26:58 2011
New Revision: 1062259

URL: http://svn.apache.org/viewvc?rev=1062259&view=rev
Log:
Merged/backported r1062248 to the 1.4 branch.

Added:
    webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/test/test-resources/knownNamespace.xsd
      - copied unchanged from r1062248, webservices/xmlschema/trunk/xmlschema-core/src/test/resources/knownNamespace.xsd
    webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/test/test-resources/xml.xsd
      - copied unchanged from r1062248, webservices/xmlschema/trunk/xmlschema-core/src/test/resources/xml.xsd
Modified:
    webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/main/java/   (props changed)
    webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/main/java/org/apache/ws/commons/schema/SchemaBuilder.java
    webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/test/java/   (props changed)
    webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/test/java/tests/ImportTest.java
    webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/test/test-resources/   (props changed)

Propchange: webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/main/java/
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Sat Jan 22 20:26:58 2011
@@ -0,0 +1,3 @@
+/webservices/commons/branches/modules/XmlSchema/1.4.6-site-fix/src/main/java:992771-992797
+/webservices/commons/tags/XmlSchema/XmlSchema-1.4.6/src/main/java:938042-992770
+/webservices/xmlschema/trunk/xmlschema-core/src/main/java:1062248

Modified: webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/main/java/org/apache/ws/commons/schema/SchemaBuilder.java
URL: http://svn.apache.org/viewvc/webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/main/java/org/apache/ws/commons/schema/SchemaBuilder.java?rev=1062259&r1=1062258&r2=1062259&view=diff
==============================================================================
--- webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/main/java/org/apache/ws/commons/schema/SchemaBuilder.java (original)
+++ webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/main/java/org/apache/ws/commons/schema/SchemaBuilder.java Sat Jan 22 20:26:58 2011
@@ -1600,16 +1600,13 @@ public class SchemaBuilder {
 				}
 			}
 		};
-		if ((schemaImport.schemaLocation != null)
-				&& (!schemaImport.schemaLocation.equals(""))) {
-			if (schema.getSourceURI() != null) {
-				schemaImport.schema = resolveXmlSchema(uri,
-						schemaImport.schemaLocation, schema.getSourceURI(),
-						validator);
-			} else {
-				schemaImport.schema = resolveXmlSchema(schemaImport.namespace,
-						schemaImport.schemaLocation, validator);
-			}
+		if (schema.getSourceURI() != null) {
+			schemaImport.schema = resolveXmlSchema(uri,
+					schemaImport.schemaLocation, schema.getSourceURI(),
+					validator);
+		} else {
+			schemaImport.schema = resolveXmlSchema(schemaImport.namespace,
+					schemaImport.schemaLocation, validator);
 		}
 		return schemaImport;
 	}

Propchange: webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/test/java/
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Sat Jan 22 20:26:58 2011
@@ -0,0 +1,3 @@
+/webservices/commons/branches/modules/XmlSchema/1.4.6-site-fix/src/test/java:992771-992797
+/webservices/commons/tags/XmlSchema/XmlSchema-1.4.6/src/test/java:938042-992770
+/webservices/xmlschema/trunk/xmlschema-core/src/test/java:1062248

Modified: webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/test/java/tests/ImportTest.java
URL: http://svn.apache.org/viewvc/webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/test/java/tests/ImportTest.java?rev=1062259&r1=1062258&r2=1062259&view=diff
==============================================================================
--- webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/test/java/tests/ImportTest.java (original)
+++ webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/test/java/tests/ImportTest.java Sat Jan 22 20:26:58 2011
@@ -22,7 +22,10 @@ package tests;
 import junit.framework.TestCase;
 import org.apache.ws.commons.schema.XmlSchema;
 import org.apache.ws.commons.schema.XmlSchemaCollection;
+import org.apache.ws.commons.schema.XmlSchemaImport;
+import org.apache.ws.commons.schema.XmlSchemaObjectCollection;
 import org.w3c.dom.Document;
+import org.xml.sax.InputSource;
 
 import javax.xml.parsers.DocumentBuilderFactory;
 import javax.xml.namespace.QName;
@@ -86,4 +89,21 @@ public class ImportTest extends TestCase
         assertNotNull(schema.getTypeByName(new QName("http://soapinterop.org/xsd2","SOAPStruct")));
         assertNotNull(schema.getElementByName(new QName("http://soapinterop.org/xsd2","SOAPWrapper")));
     }
+    
+    /**
+     * Tests that imports without <tt>schemaLocation</tt> are resolved if the corresponding schemas
+     * have been registered using {@link XmlSchemaCollection#getKnownNamespaceMap()}.
+     */
+    public void testImportWithKnownNamespace() {
+        XmlSchemaCollection schemaCol = new XmlSchemaCollection();
+        schemaCol.getKnownNamespaceMap().put("http://www.w3.org/XML/1998/namespace",
+                new XmlSchemaCollection().read(new InputSource(Resources.asURI("xml.xsd")), null));
+        XmlSchema schema = schemaCol.read(new InputSource(Resources.asURI("knownNamespace.xsd")), null);
+        XmlSchemaObjectCollection externals = schema.getIncludes();
+        assertEquals(1, externals.getCount());
+        XmlSchemaImport schemaImport = (XmlSchemaImport)externals.getItem(0);
+        assertEquals("http://www.w3.org/XML/1998/namespace", schemaImport.getNamespace());
+        XmlSchema schema2 = schemaImport.getSchema();
+        assertNotNull(schema2);
+    }
 }

Propchange: webservices/commons/branches/modules/XmlSchema/1_4_X_BRANCH/src/test/test-resources/
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Sat Jan 22 20:26:58 2011
@@ -0,0 +1,3 @@
+/webservices/commons/branches/modules/XmlSchema/1.4.6-site-fix/src/test/test-resources:992771-992797
+/webservices/commons/tags/XmlSchema/XmlSchema-1.4.6/src/test/test-resources:938042-992770
+/webservices/xmlschema/trunk/xmlschema-core/src/test/resources:1062248