Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
Java-SCA-M2
-
None
-
All
-
Patch Available
Description
When the schema is let us say the following
<xsd:element name="HolderDetail" type="tns:HolderDetail"/>
<xsd:complexType name="HolderDetail">
<xsd:all>
<xsd:element name="ID" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
The codegen tool generates the name for the feature "ID" in lower case i.e "id". Hence when we use the DataObject.setString("ID","value"), it throws the following exception because it could not find the feature ID.
Caused by: java.lang.IllegalArgumentException: Class 'HolderDetail' does not have a feature named 'ID'
at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.setFeatureName(DataObjectUtil.java:2069)
at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.process(DataObjectUtil.java:2211)
at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.init(DataObjectUtil.java:1941)
at org.apache.tuscany.sdo.util.DataObjectUtil$Accessor.create(DataObjectUtil.java:1858)
at org.apache.tuscany.sdo.util.DataObjectUtil.setString(DataObjectUtil.java:474)
at org.apache.tuscany.sdo.impl.DataObjectImpl.setString(DataObjectImpl.java:566)