Author: dims
Date: Tue Oct 25 09:54:05 2005
New Revision: 328411

URL: http://svn.apache.org/viewcvs?rev=328411&view=rev
Log:
Fix for PROBLEM 1&2 reported here by woden folks:
http://mail-archives.apache.org/mod_mbox/ws-woden-dev/200510.mbox/browser


Modified:
    
webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/SchemaBuilder.java

Modified: 
webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/SchemaBuilder.java
URL: 
http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/SchemaBuilder.java?rev=328411&r1=328410&r2=328411&view=diff
==============================================================================
--- 
webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/SchemaBuilder.java
 (original)
+++ 
webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/SchemaBuilder.java
 Tue Oct 25 09:54:05 2005
@@ -752,14 +752,18 @@
 

         if (extEl.hasAttribute("base")) {

             String name = extEl.getAttribute("base");

-            String nsFromEl = Tokenizer.tokenize(name, ":")[0];

-            Object result = schema.namespaces.get(nsFromEl);

+            if (name.indexOf(':') != -1) {

+                String nsFromEl = Tokenizer.tokenize(name, ":")[0];

+                Object result = schema.namespaces.get(nsFromEl);

 

-            if (result == null)

-                throw new XmlSchemaException("No namespace found in "

-                                             + "given base simple content 
type");

-            name = Tokenizer.lastToken(name, ":")[1];

-            ext.baseTypeName = new QName(result.toString(), name);

+                if (result == null)

+                    throw new XmlSchemaException("No namespace found in "

+                            + "given base simple content type");

+                name = Tokenizer.lastToken(name, ":")[1];

+                ext.baseTypeName = new QName(result.toString(), name);

+            } else {

+                ext.baseTypeName = new QName(schema.getNamespace(""), name);

+            }

         }

 

         for (

@@ -1394,10 +1398,13 @@
             isQualified = formDef.equals(XmlSchemaForm.QUALIFIED);

         }

 

-        String ns = isQualified || isGlobal ? schema.targetNamespace :

+        String ns = (isQualified || isGlobal) ? schema.targetNamespace :

                                                      null;

-        element.qualifiedName = new QName(ns, element.name);

-

+        

+        if(element.name != null) {

+            element.qualifiedName = new QName(ns, element.name);

+        }

+        

         Element annotationEl =

                 XDOMUtil.getFirstChildElementNS(el,

                                                 XmlSchema.SCHEMA_NS,



Reply via email to