It doesn't quite work.
I can get the simple <complex> star wars example to work. However, if
the complex type refers to a simple <element> it fails to generate the
WSDL. Example:
<xs:complexType name="CardExpiry">
<xs:sequence>
<xs:element ref="month"/>
...
<xs:element name="month">
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:totalDigits value="2"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
I map the CardExpiry and it runs through the
writeSchemaForDocType() just fine. However, Axis then tries to include
the xsd for the month element and fails.
I may be mapping month incorrectly, but I do it the same was as
'CardExpiry' so...
q = new QName(ns, "month");
tm.register(MonthDocument.Month.class, q,
new XmlBeanSerializerFactory(MonthDocument.Month.class, q),
new XmlBeanDeserializerFactory(MonthDocument.Month.class, q));
Am I registering "month" incorrectly?
writeSchemaForDocType.docType.getName() returns a qname of null with a
docType.getShortJavaName() == "Month".
Another thing that may be incredibly difficult to deal with: How does
Axis expect folks with large schemas to register the XmlBeanSerializers?
If the solution is the hand-craft serializer definitions for each and
every schema element and also maintain that by hand it's never going to
be feasible and I'm going to have to look at writing something to
automate that.
Let me know.
Thank you.
--
Free replacement for Exchange and Outlook (Contacts and Calendar)
http://www.ScheduleWorld.com/
WAP: http://www.ScheduleWorld.com/sw/WAPToday?id=4000&tz=EST
WebDAV: http://www.ScheduleWorld.com/sw/webDAVDir/4000.ics
VFREEBUSY: http://www.ScheduleWorld.com/sw/freebusy/4000.ifb