Finding an XML data binding solution for Java ME CLDC isn't easy.  Now, as of version 2.2, XBinder can meet your need.  We now support Java ME CLDC 1.1 with MIDP 2.0.

Using XBinder with Java ME is simple.  First, you add the -cldc option to your XBinder command line when compiling your schema.  XBinder then generates code using only the Java language features supported by Java ME (for example, it doesn't use generics).  It also references replacement classes for some classes that are part of Java Standard Edition, but not Java Micro Edition.

Second, you use xbrt_cldc.jar instead of xbrt.jar.   Besides the normal XBinder runtime classes, this alternate JAR also contains those replacement classes that I just mentioned, which are based on open source code.

Finally, the generated code will work with an XmlPullParser.  You just  need a JAR for the XmlPull API and an implementation thereof.  These are readily available, but we conveniently provide them for you.  The provided implementation, known as kXML , is specifically targeted at constrained devices.

Update on Android Support:  Now that XBinder has direct support for the XmlPull API, which Android directly supports, we have eliminated the option and the requirement to use StAX with Android.  This reduces the footprint for XBinder-based applications on Android.