A few comments on codegen from schema with the SNAPSHOT release:

   * There are a lot of nice little improvements to the generated code :-)

   * When generating code for multiple schema, the default package name
     for the "wrapper" binding.xml has changed. With 1.2.1, the package
     name appeared to be set to the parent package of all the package
     names contained in the schema-set. With 1.2.2, it appears to use
     the package name from the first schema in the schema-set.
     Furthermore, setting the "package=" customization on the
     schema-set does not modify the package name of the "wrapper"
     binding.xml.

   * When using the new binding-file-name customization, I'm getting a
     "JiBXException: Unknown namespace". Stack trace below. I couldn't
     reproduce this on a simple example. I'll try and create a test
     case for this tomorrow.

       [java] Exception in thread "main"
       org.jibx.runtime.JiBXException: Unknown namespace URI
       http:///xxx//complex-types.xsd
       [java] at org.jibx.runtime.QName.serialize(QName.java:325)
       [java] at
       
org.jibx.binding.model.StructureElement.getQualifiedMapAs(StructureElement.java:238)
       [java] at
       
org.jibx.binding.model.StructureElement.JiBX_normal_marshalAttr_5_0(StructureElement.java)
       [java] at
       org.jibx.binding.model.JiBX_normalStructureElement_access.marshal()
       [java] at
       
org.jibx.binding.model.NestingElementBase.JiBX_normal_marshal_2_1(NestingElementBase.java)
       [java] at
       
org.jibx.binding.model.ContainerElementBase.JiBX_normal_marshal_3_0(ContainerElementBase.java)
       [java] at
       
org.jibx.binding.model.TemplateElementBase.JiBX_normal_marshal_4_0(TemplateElementBase.java)
       [java] at
       
org.jibx.binding.model.MappingElementBase.JiBX_normal_marshal_5_0(MappingElementBase.java)
       [java] at
       
org.jibx.binding.model.MappingElement.JiBX_normal_marshal_6_0(MappingElement.java)
       [java] at
       org.jibx.binding.model.JiBX_normalMappingElement_access.marshal()
       [java] at
       
org.jibx.binding.model.BindingElement.JiBX_normal_marshal_3_2(BindingElement.java)
       [java] at
       org.jibx.binding.model.JiBX_normalBindingElement_access.marshal()
       [java] at
       org.jibx.binding.model.BindingElement.marshal(BindingElement.java)
       [java] at
       
org.jibx.binding.model.BindingOrganizer.writeBindings(BindingOrganizer.java:780)
       [java] at
       org.jibx.schema.codegen.CodeGen.writeBindings(CodeGen.java:1744)
       [java] at org.jibx.schema.codegen.CodeGen.main(CodeGen.java:2235)

   * The generator is maybe trying to be too clever in its
     pluralization. For an element with name="Relay" minOccurs="0"
     maxOccurs="unbounded", the generator creates the plural Relaies -
     maybe this is French :-) :

       private List<Relay> relayList = new ArrayList<Relay>();

       /**
       * Get the list of 'Relay' element items.
       *
       * @return list
       */
       public List<Relay> *getRelaies*() {
       return relayList;
       }

   In general, I think I'd rather see plurals such as getBodys() spelt
   wrongly. Or maybe just play it safe with getRelayList() ?

   * The new prefix customization is great. It would be worth
     documenting that specifying an empty string for the prefix
     customization removes the prefix="..." attribute on the namespace
     of the generated binding (making it the default element).


nigel.

Dennis Sosnoski wrote:
The JiBX 1.2.2 release is finally about ready to go. There are many changes in and new features in this release, so in the hope of making sure it's solid I'm posting a test build at http://www.jibx.org/jibx_1_2_2-SNAPSHOT.zip to encourage users to give it a try. Since this is not a formal release please don't use Jira for any new issues which weren't present in 1.2.1 - just email this list, and I'll try to make sure anything new is fixed before the official 1.2.2 release, which will occur next week.

Some of the nicer features of this release include:

   1. Support for modular code and binding generation from schemas, with
      separately-compilable bindings
   2. Support for Joda date/time classes, along with a much wider
      variety of date/time conversions
   3. Support for schema-compatible whitespace handling when
      deserializing values

There are a few more problems in org.jibx.extras I'd like to clean up before the actual release, but I'll try to avoid any significant changes to code outside this package. I'll also extend some parts of the documentation, especially for the CodeGen customization examples.

  - Dennis

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
jibx-users mailing list
jibx-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jibx-users

Reply via email to