You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xmlbeans.apache.org by ra...@apache.org on 2004/11/24 21:06:00 UTC

cvs commit: xml-xmlbeans/v2/src/xmlcomp/org/apache/xmlbeans/impl/tool XsbDumper.java

radup       2004/11/24 12:06:00

  Modified:    v2/src/typeimpl/org/apache/xmlbeans/impl/schema
                        SchemaTypeImpl.java
               v2/src/typeimpl/org/apache/xmlbeans/impl/validator
                        Validator.java
               v2/src/xmlcomp/org/apache/xmlbeans/impl/tool XsbDumper.java
  Log:
  Updated some reflection code in SchemaTypeImpl to use a protected constructor.
  Fixed an NPE in the validator.
  Updated XsbDumper to the latest version of the .xsb file format.
  
  Revision  Changes    Path
  1.18      +20 -2     xml-xmlbeans/v2/src/typeimpl/org/apache/xmlbeans/impl/schema/SchemaTypeImpl.java
  
  Index: SchemaTypeImpl.java
  ===================================================================
  RCS file: /home/cvs/xml-xmlbeans/v2/src/typeimpl/org/apache/xmlbeans/impl/schema/SchemaTypeImpl.java,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- SchemaTypeImpl.java	19 Nov 2004 23:52:33 -0000	1.17
  +++ SchemaTypeImpl.java	24 Nov 2004 20:05:59 -0000	1.18
  @@ -1668,7 +1668,7 @@
               if (impl == null) return null;
               try
               {
  -                _javaImplConstructor2 = impl.getConstructor(new Class[] { SchemaType.class, boolean.class });
  +                _javaImplConstructor2 = impl.getDeclaredConstructor(new Class[] { SchemaType.class, boolean.class });
               }
               catch (NoSuchMethodException e)
               {
  @@ -1808,10 +1808,28 @@
               Constructor ctr = getJavaImplConstructor2();
               if (ctr != null)
               {
  +                boolean accessible = ctr.isAccessible();
                   try
                   {
  +                    ctr.setAccessible(true);
                       // System.out.println("Succeeded!");
  -                    return (XmlObject)ctr.newInstance(new Object[] { sType, sType.isSimpleType() ? Boolean.FALSE : Boolean.TRUE });
  +                    try
  +                    {
  +                        return (XmlObject)ctr.newInstance(new Object[] { sType, sType.isSimpleType() ? Boolean.FALSE : Boolean.TRUE });
  +                    }
  +                    catch (Exception e)
  +                    {
  +                        System.out.println("Exception trying to instantiate impl class.");
  +                        e.printStackTrace();
  +                    }
  +                    finally
  +                    {
  +                        // Make a best-effort try to set the accessibility back to what it was
  +                        try
  +                        {   ctr.setAccessible(accessible); }
  +                        catch (SecurityException se)
  +                        { }
  +                    }
                   }
                   catch (Exception e)
                   {
  
  
  
  1.25      +2 -2      xml-xmlbeans/v2/src/typeimpl/org/apache/xmlbeans/impl/validator/Validator.java
  
  Index: Validator.java
  ===================================================================
  RCS file: /home/cvs/xml-xmlbeans/v2/src/typeimpl/org/apache/xmlbeans/impl/validator/Validator.java,v
  retrieving revision 1.24
  retrieving revision 1.25
  diff -u -r1.24 -r1.25
  --- Validator.java	19 Nov 2004 01:28:41 -0000	1.24
  +++ Validator.java	24 Nov 2004 20:05:59 -0000	1.25
  @@ -584,10 +584,10 @@
           }
   
           // note in schema spec 3.3.4, you're not even allowed to say xsi:nil="false" if you're not nillable!
  -        if (hasNil && !elementField.isNillable())
  +        if (hasNil && (elementField == null || !elementField.isNillable()))
           {
               emitFieldError( event, XmlErrorCodes.ELEM_LOCALLY_VALID$NOT_NILLABLE, null,
  -                elementField.getName(), elementField.getType(), null,
  +                elementField == null ? null : elementField.getName(), elementType, null,
                   XmlValidationError.ELEMENT_TYPE_INVALID, (state == null ? null : state._type));
   
               _eatContent = 1;
  
  
  
  1.6       +3 -2      xml-xmlbeans/v2/src/xmlcomp/org/apache/xmlbeans/impl/tool/XsbDumper.java
  
  Index: XsbDumper.java
  ===================================================================
  RCS file: /home/cvs/xml-xmlbeans/v2/src/xmlcomp/org/apache/xmlbeans/impl/tool/XsbDumper.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- XsbDumper.java	27 May 2004 18:37:48 -0000	1.5
  +++ XsbDumper.java	24 Nov 2004 20:05:59 -0000	1.6
  @@ -138,7 +138,7 @@
   
       public static final int DATA_BABE = 0xDA7ABABE;
       public static final int MAJOR_VERSION = 2;
  -    public static final int MINOR_VERSION = 19;
  +    public static final int MINOR_VERSION = 20;
   
       public static final int FILETYPE_SCHEMAINDEX = 1;
       public static final int FILETYPE_SCHEMATYPE = 2;
  @@ -1119,7 +1119,8 @@
           emit("Java prop name: " + readString());
           emit("Java type code: " + jtcString(readShort()));
           emit("Type for java signature: " + readType());
  -        emit("Java setter delimiter: " + qnameSetString(readQNameSet()));
  +        if (atMost(2, 19, 0))
  +            emit("Java setter delimiter: " + qnameSetString(readQNameSet()));
           if (atLeast(2, 16, 0))
               emit("Default value: " + readXmlValueObject());
           if (((propflags & FLAG_PROP_ISATTR) == 0) && atLeast(2, 17, 0))
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xmlbeans.apache.org
For additional commands, e-mail: commits-help@xmlbeans.apache.org