Hi,
Based on the code, my understanding is that CXF can potentially pass in an
Element QName or a type QName. For an element, we should try to find the types
behind the element. For complex types, dynamic SDO always return
commonj.sdo.DataObject. You can starts with a fixed class name and use test
cases to see what extra logic is needed.
Thanks,
Raymond
From: Pradeep Fernando
Sent: Thursday, June 11, 2009 6:55 AM
To: Raymond Feng
Subject: some clarification-wsdltoJava soc 2009.
hi raymond,
in the databinding interface used by the CXF there is a method called
getTypes(Qname,boolean).
In the XMLBeans Databinding implementation they have implemented as
public String getType(QName qn, boolean element) {
String ret;
if (element) {
ret = typeSystem.findElement(qn).getType().getFullJavaName();
if (ret.contains("$")) {
ret = ret.substring(0, ret.indexOf('$'));
}
return ret;
}
ret = typeSystem.findType(qn).getFullJavaName();
return ret.replace('$', '.');
}
here typeSystem refers to in memor type object generated by XMLBeans generator.
In dynamic sdo implementation this is always commonj.sdo.DataObject i guess. im
not sure about the
boolean value (element), passed in to the method. would that make any
difference?
thanks