[jboss-svn-commits] JBoss Common SVN: r1977 - branches/JBossXB-1.0.0.CR6_JBAS-3581/src/main/org/jboss/xb/binding/sunday/marshalling

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Aug 29 09:43:02 EDT 2006


Author: darran.lofthouse at jboss.com
Date: 2006-08-29 09:43:01 -0400 (Tue, 29 Aug 2006)
New Revision: 1977

Modified:
   branches/JBossXB-1.0.0.CR6_JBAS-3581/src/main/org/jboss/xb/binding/sunday/marshalling/MarshallerImpl.java
Log:
JBAS-3581 - Additional checks for nulls for handling anonymous simple types.


Modified: branches/JBossXB-1.0.0.CR6_JBAS-3581/src/main/org/jboss/xb/binding/sunday/marshalling/MarshallerImpl.java
===================================================================
--- branches/JBossXB-1.0.0.CR6_JBAS-3581/src/main/org/jboss/xb/binding/sunday/marshalling/MarshallerImpl.java	2006-08-29 13:28:46 UTC (rev 1976)
+++ branches/JBossXB-1.0.0.CR6_JBAS-3581/src/main/org/jboss/xb/binding/sunday/marshalling/MarshallerImpl.java	2006-08-29 13:43:01 UTC (rev 1977)
@@ -455,7 +455,7 @@
          declareXsiType(type.getQName(), ctx.attrs);
       }
 
-      String typeName = type.getQName().getLocalPart();
+      String typeName = type.getQName() == null ? null : type.getQName().getLocalPart();
       if(ctx.attrs == null && SimpleTypeBindings.XS_QNAME_NAME.equals(typeName) ||
          SimpleTypeBindings.XS_NOTATION_NAME.equals(typeName) ||
          type.getItemType() != null &&
@@ -933,6 +933,7 @@
                                     Object value)
    {
       String marshalled;
+      QName simpleTypeQName = simpleType.getQName();
       if(simpleType.getItemType() != null)
       {
          TypeBinding itemType = simpleType.getItemType();
@@ -964,9 +965,9 @@
             );
          }
       }
-      else if(Constants.NS_XML_SCHEMA.equals(simpleType.getQName().getNamespaceURI()))
+      else if(simpleTypeQName != null && Constants.NS_XML_SCHEMA.equals(simpleTypeQName.getNamespaceURI()))
       {
-         String typeName = simpleType.getQName().getLocalPart();
+         String typeName = simpleTypeQName.getLocalPart();
 
          String prefix = null;
          boolean removePrefix = false;
@@ -1033,7 +1034,7 @@
                {
                   throw new JBossXBRuntimeException("Failed to find neither value() nor getValue() in " +
                      value.getClass() +
-                     " which is bound to enumeration type " + simpleType.getQName()
+                     " which is bound to enumeration type " + simpleTypeQName
                   );
                }
             }




More information about the jboss-svn-commits mailing list