2 Replies Latest reply on Mar 1, 2011 2:09 AM by Gr1mR33p3r

    DCD Generated classes issue

    Gr1mR33p3r

      Hi,

       

      This takes a bit of explaining so please bear with me

       

      I am having an issue with the generated classes from a wsdl. I have a web service which serves a data structure as can be seen from the included wsdl and xsd below. The part I am concerned about is the Value type (which is subclassed as below in the UML):

       

      umlSection.jpg

       

      What the web service does is return a SUBCLASS of Value (ie. NumberValue, DateValue etc) which will contain a typed value. This works fine and the result comes through as expected, works fine when importing in both Java and C#. However when I call the runQuery operation from Actionscript I get the following object:

       

      debugWatch.jpg

       

      The object built up by the generated classes is of type Value (the superclass). It should be of a subtype of value? Any idea how to get the whole subtype thing working right in the generated classes???

       

      Included below is the boring stuff should anyone require more info

       

      Response from server:

      <?xml version='1.0' encoding='UTF-8'?><S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"><S:Body><ns2:runResponse xmlns:ns2="http://implementation.service.cnl.eskom.esriza/"><return><data><businessObjectDefinitionName>TestBO</businessObjectDefinitionName><queryD efinitionId>1</queryDefinitionId><paged>false</paged><fromRow>0</fromRow><toRow>0</toRow>< businessObjects><definitionName>TestBO</definitionName><attributes><definitionName>Attr0</ definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>0</value></value></attributes><attributes><definitionName>Attr1</definitionName><va lue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>1</value></value></attributes><attributes><definitionN ame>Attr2</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>2</value></value></attributes><attributes><definitionN ame>Attr3</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>3</value></value></attributes><attributes><definitionN ame>Attr4</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>4</value></value></attributes><attributes><definitionN ame>Attr5</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>5</value></value></attributes><attributes><definitionN ame>Attr6</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>6</value></value></attributes><attributes><definitionN ame>Attr7</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal7</value></value></attributes><attributes><def initionName>Attr8</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal8</value></value></attributes><attributes><def initionName>Attr9</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal9</value></value></attributes></businessObject s><businessObjects><definitionName>TestBO</definitionName><attributes><definitionName>Attr 0</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>10</value></value></attributes><attributes><definition Name>Attr1</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>11</value></value></attributes><attributes><definition Name>Attr2</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>12</value></value></attributes><attributes><definition Name>Attr3</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>13</value></value></attributes><attributes><definition Name>Attr4</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>14</value></value></attributes><attributes><definition Name>Attr5</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>15</value></value></attributes><attributes><definition Name>Attr6</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>16</value></value></attributes><attributes><definition Name>Attr7</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal17</value></value></attributes><attributes><de finitionName>Attr8</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal18</value></value></attributes><attributes><de finitionName>Attr9</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal19</value></value></attributes></businessObjec ts><businessObjects><definitionName>TestBO</definitionName><attributes><definitionName>Att r0</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>20</value></value></attributes><attributes><definition Name>Attr1</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>21</value></value></attributes><attributes><definition Name>Attr2</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>22</value></value></attributes><attributes><definition Name>Attr3</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>23</value></value></attributes><attributes><definition Name>Attr4</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>24</value></value></attributes><attributes><definition Name>Attr5</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>25</value></value></attributes><attributes><definition Name>Attr6</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>26</value></value></attributes><attributes><definition Name>Attr7</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal27</value></value></attributes><attributes><de finitionName>Attr8</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal28</value></value></attributes><attributes><de finitionName>Attr9</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal29</value></value></attributes></businessObjec ts><businessObjects><definitionName>TestBO</definitionName><attributes><definitionName>Att r0</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>30</value></value></attributes><attributes><definition Name>Attr1</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>31</value></value></attributes><attributes><definition Name>Attr2</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>32</value></value></attributes><attributes><definition Name>Attr3</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>33</value></value></attributes><attributes><definition Name>Attr4</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>34</value></value></attributes><attributes><definition Name>Attr5</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>35</value></value></attributes><attributes><definition Name>Attr6</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>36</value></value></attributes><attributes><definition Name>Attr7</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal37</value></value></attributes><attributes><de finitionName>Attr8</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal38</value></value></attributes><attributes><de finitionName>Attr9</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal39</value></value></attributes></businessObjec ts><businessObjects><definitionName>TestBO</definitionName><attributes><definitionName>Att r0</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>40</value></value></attributes><attributes><definition Name>Attr1</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>41</value></value></attributes><attributes><definition Name>Attr2</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>42</value></value></attributes><attributes><definition Name>Attr3</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>43</value></value></attributes><attributes><definition Name>Attr4</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>44</value></value></attributes><attributes><definition Name>Attr5</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>45</value></value></attributes><attributes><definition Name>Attr6</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>46</value></value></attributes><attributes><definition Name>Attr7</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal47</value></value></attributes><attributes><de finitionName>Attr8</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal48</value></value></attributes><attributes><de finitionName>Attr9</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal49</value></value></attributes></businessObjec ts><businessObjects><definitionName>TestBO</definitionName><attributes><definitionName>Att r0</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>50</value></value></attributes><attributes><definition Name>Attr1</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>51</value></value></attributes><attributes><definition Name>Attr2</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>52</value></value></attributes><attributes><definition Name>Attr3</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>53</value></value></attributes><attributes><definition Name>Attr4</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>54</value></value></attributes><attributes><definition Name>Attr5</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>55</value></value></attributes><attributes><definition Name>Attr6</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>56</value></value></attributes><attributes><definition Name>Attr7</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal57</value></value></attributes><attributes><de finitionName>Attr8</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal58</value></value></attributes><attributes><de finitionName>Attr9</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal59</value></value></attributes></businessObjec ts><businessObjects><definitionName>TestBO</definitionName><attributes><definitionName>Att r0</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>60</value></value></attributes><attributes><definition Name>Attr1</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>61</value></value></attributes><attributes><definition Name>Attr2</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>62</value></value></attributes><attributes><definition Name>Attr3</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>63</value></value></attributes><attributes><definition Name>Attr4</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>64</value></value></attributes><attributes><definition Name>Attr5</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>65</value></value></attributes><attributes><definition Name>Attr6</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>66</value></value></attributes><attributes><definition Name>Attr7</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal67</value></value></attributes><attributes><de finitionName>Attr8</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal68</value></value></attributes><attributes><de finitionName>Attr9</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal69</value></value></attributes></businessObjec ts><businessObjects><definitionName>TestBO</definitionName><attributes><definitionName>Att r0</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>70</value></value></attributes><attributes><definition Name>Attr1</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>71</value></value></attributes><attributes><definition Name>Attr2</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>72</value></value></attributes><attributes><definition Name>Attr3</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>73</value></value></attributes><attributes><definition Name>Attr4</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>74</value></value></attributes><attributes><definition Name>Attr5</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>75</value></value></attributes><attributes><definition Name>Attr6</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>76</value></value></attributes><attributes><definition Name>Attr7</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal77</value></value></attributes><attributes><de finitionName>Attr8</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal78</value></value></attributes><attributes><de finitionName>Attr9</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal79</value></value></attributes></businessObjec ts><businessObjects><definitionName>TestBO</definitionName><attributes><definitionName>Att r0</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>80</value></value></attributes><attributes><definition Name>Attr1</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>81</value></value></attributes><attributes><definition Name>Attr2</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>82</value></value></attributes><attributes><definition Name>Attr3</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>83</value></value></attributes><attributes><definition Name>Attr4</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>84</value></value></attributes><attributes><definition Name>Attr5</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>85</value></value></attributes><attributes><definition Name>Attr6</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>86</value></value></attributes><attributes><definition Name>Attr7</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal87</value></value></attributes><attributes><de finitionName>Attr8</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal88</value></value></attributes><attributes><de finitionName>Attr9</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal89</value></value></attributes></businessObjec ts><businessObjects><definitionName>TestBO</definitionName><attributes><definitionName>Att r0</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>90</value></value></attributes><attributes><definition Name>Attr1</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>91</value></value></attributes><attributes><definition Name>Attr2</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>92</value></value></attributes><attributes><definition Name>Attr3</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>93</value></value></attributes><attributes><definition Name>Attr4</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>94</value></value></attributes><attributes><definition Name>Attr5</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>95</value></value></attributes><attributes><definition Name>Attr6</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:integerValue"><value>96</value></value></attributes><attributes><definition Name>Attr7</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal97</value></value></attributes><attributes><de finitionName>Attr8</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal98</value></value></attributes><attributes><de finitionName>Attr9</definitionName><value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:stringValue"><value>StringVal99</value></value></attributes></businessObjec ts></data><referencedObjects><businessObjectDefinitions><tableName>TestBOTable</tableName> <name>TestBO</name><queryDefinitionId>1</queryDefinitionId><attributes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:simpleAttributeDefinition"><name>Attr0</name><displayname>Display Attr0</displayname><type>int</type><editable>false</editable><category>Test1</category><d isplayFormats><targetSystem>printf</targetSystem><formatString>%s</formatString></displayF ormats></attributes><attributes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:simpleAttributeDefinition"><name>Attr1</name><displayname>Display Attr1</displayname><type>int</type><editable>false</editable><category>Test1</category><d isplayFormats><targetSystem>printf</targetSystem><formatString>%s</formatString></displayF ormats></attributes><attributes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:simpleAttributeDefinition"><name>Attr2</name><displayname>Display Attr2</displayname><type>int</type><editable>false</editable><category>Test1</category><d isplayFormats><targetSystem>printf</targetSystem><formatString>%s</formatString></displayF ormats></attributes><attributes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:simpleAttributeDefinition"><name>Attr3</name><displayname>Display Attr3</displayname><type>int</type><editable>false</editable><category>Test1</category><d isplayFormats><targetSystem>printf</targetSystem><formatString>%s</formatString></displayF ormats></attributes><attributes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:simpleAttributeDefinition"><name>Attr4</name><displayname>Display Attr4</displayname><type>int</type><editable>false</editable><category>Test1</category><d isplayFormats><targetSystem>printf</targetSystem><formatString>%s</formatString></displayF ormats></attributes><attributes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:simpleAttributeDefinition"><name>Attr5</name><displayname>Display Attr5</displayname><type>int</type><editable>false</editable><category>Test2</category><d isplayFormats><targetSystem>printf</targetSystem><formatString>%s</formatString></displayF ormats></attributes><attributes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:simpleAttributeDefinition"><name>Attr6</name><displayname>Display Attr6</displayname><type>int</type><editable>false</editable><category>Test2</category><d isplayFormats><targetSystem>printf</targetSystem><formatString>%s</formatString></displayF ormats></attributes><attributes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:simpleAttributeDefinition"><name>Attr7</name><displayname>Display Attr7</displayname><type>string</type><editable>false</editable><category>Test2</category ><displayFormats><targetSystem>printf</targetSystem><formatString>%s</formatString></displ ayFormats></attributes><attributes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:simpleAttributeDefinition"><name>Attr8</name><displayname>Display Attr8</displayname><type>string</type><editable>false</editable><category>Test2</category ><displayFormats><targetSystem>printf</targetSystem><formatString>%s</formatString></displ ayFormats></attributes><attributes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:simpleAttributeDefinition"><name>Attr9</name><displayname>Display Attr9</displayname><type>string</type><editable>false</editable><category>Test2</category ><displayFormats><targetSystem>printf</targetSystem><formatString>%s</formatString></displ ayFormats></attributes></businessObjectDefinitions><queryDefinitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:complexAttributeQueryDefinition"><id>1</id><category>BOs</category><name>Ge tTestBO</name><businessObjectName>TestBO</businessObjectName><whereClause>:Attr1 = ?</whereClause><parameterDefinitions><id>1</id><name>Attr1</name><definitionName>Attr1</d efinitionName></parameterDefinitions><selectedAttributes><displayname>Display Attr0</displayname><category>Test</category><definitionName>Attr0</definitionName></selec tedAttributes><selectedAttributes><displayname>Display Attr1</displayname><category>Test</category><definitionName>Attr1</definitionName></selec tedAttributes><selectedAttributes><displayname>Display Attr2</displayname><category>Test</category><definitionName>Attr2</definitionName></selec tedAttributes><selectedAttributes><displayname>Display Attr3</displayname><category>Test</category><definitionName>Attr3</definitionName></selec tedAttributes><selectedAttributes><displayname>Display Attr4</displayname><category>Test</category><definitionName>Attr4</definitionName></selec tedAttributes><selectedAttributes><displayname>Display Attr5</displayname><category>Test</category><definitionName>Attr5</definitionName></selec tedAttributes><selectedAttributes><displayname>Display Attr6</displayname><category>Test</category><definitionName>Attr6</definitionName></selec tedAttributes><selectedAttributes><displayname>Display Attr7</displayname><category>Test</category><definitionName>Attr7</definitionName></selec tedAttributes><selectedAttributes><displayname>Display Attr8</displayname><category>Test</category><definitionName>Attr8</definitionName></selec tedAttributes><selectedAttributes><displayname>Display Attr9</displayname><category>Test</category><definitionName>Attr9</definitionName></selec tedAttributes></queryDefinitions></referencedObjects><status><success>true</success></stat us></return></ns2:runResponse></S:Body></S:Envelope>

       

      Here is the wsdl:

       

      <?xml version='1.0' encoding='UTF-8'?><!-- Published by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.1.3-b02-. --><!-- Generated by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.1.3-hudson-390-. --><definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://implementation.service.cnl.eskom.esriza/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="DataQueryServiceService" targetNamespace="http://implementation.service.cnl.eskom.esriza/">

        <types>

          <xsd:schema>

            <xsd:import namespace="http://implementation.service.cnl.eskom.esriza/" schemaLocation="http://dev-ebeneke:8080/CNLWebServices/DataQueryServicePort?xsd=1" />

          </xsd:schema>

        </types>

        <message name="run">

          <part element="tns:run" name="parameters" />

        </message>

        <message name="runResponse">

          <part element="tns:runResponse" name="parameters" />

        </message>

        <message name="save">

          <part element="tns:save" name="parameters" />

        </message>

        <message name="saveResponse">

          <part element="tns:saveResponse" name="parameters" />

        </message>

        <message name="getQueries">

          <part element="tns:getQueries" name="parameters" />

        </message>

        <message name="getQueriesResponse">

          <part element="tns:getQueriesResponse" name="parameters" />

        </message>

        <message name="getQueryBusinessObjects">

          <part element="tns:getQueryBusinessObjects" name="parameters" />

        </message>

        <message name="getQueryBusinessObjectsResponse">

          <part element="tns:getQueryBusinessObjectsResponse" name="parameters" />

        </message>

        <message name="ping">

          <part element="tns:ping" name="parameters" />

        </message>

        <message name="pingResponse">

          <part element="tns:pingResponse" name="parameters" />

        </message>

        <portType name="DataQueryServiceDelegate">

          <operation name="run">

            <input message="tns:run" />

            <output message="tns:runResponse" />

          </operation>

          <operation name="save">

            <input message="tns:save" />

            <output message="tns:saveResponse" />

          </operation>

          <operation name="getQueries">

            <input message="tns:getQueries" />

            <output message="tns:getQueriesResponse" />

          </operation>

          <operation name="getQueryBusinessObjects">

            <input message="tns:getQueryBusinessObjects" />

            <output message="tns:getQueryBusinessObjectsResponse" />

          </operation>

          <operation name="ping">

            <input message="tns:ping" />

            <output message="tns:pingResponse" />

          </operation>

        </portType>

        <binding name="DataQueryServicePortBinding" type="tns:DataQueryServiceDelegate">

          <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />

          <operation name="run">

            <soap:operation soapAction="" />

            <input>

              <soap:body use="literal" />

            </input>

            <output>

              <soap:body use="literal" />

            </output>

          </operation>

          <operation name="save">

            <soap:operation soapAction="" />

            <input>

              <soap:body use="literal" />

            </input>

            <output>

              <soap:body use="literal" />

            </output>

          </operation>

          <operation name="getQueries">

            <soap:operation soapAction="" />

            <input>

              <soap:body use="literal" />

            </input>

            <output>

              <soap:body use="literal" />

            </output>

          </operation>

          <operation name="getQueryBusinessObjects">

            <soap:operation soapAction="" />

            <input>

              <soap:body use="literal" />

            </input>

            <output>

              <soap:body use="literal" />

            </output>

          </operation>

          <operation name="ping">

            <soap:operation soapAction="" />

            <input>

              <soap:body use="literal" />

            </input>

            <output>

              <soap:body use="literal" />

            </output>

          </operation>

        </binding>

        <service name="DataQueryServiceService">

          <port binding="tns:DataQueryServicePortBinding" name="DataQueryServicePort">

            <soap:address location="http://dev-ebeneke:8080/CNLWebServices/DataQueryServicePort" />

          </port>

        </service>

      </definitions>

       

       

       

      and the xsd:

       

       

      <?xml version='1.0' encoding='UTF-8'?><!-- Published by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.1.3-b02-. --><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://implementation.service.cnl.eskom.esriza/" targetNamespace="http://implementation.service.cnl.eskom.esriza/" version="1.0">

       

        <xs:element name="getQueries" type="tns:getQueries" />

       

        <xs:element name="getQueriesResponse" type="tns:getQueriesResponse" />

       

        <xs:element name="getQueryBusinessObjects" type="tns:getQueryBusinessObjects" />

       

        <xs:element name="getQueryBusinessObjectsResponse" type="tns:getQueryBusinessObjectsResponse" />

       

        <xs:element name="ping" type="tns:ping" />

       

        <xs:element name="pingResponse" type="tns:pingResponse" />

       

        <xs:element name="run" type="tns:run" />

       

        <xs:element name="runResponse" type="tns:runResponse" />

       

        <xs:element name="save" type="tns:save" />

       

        <xs:element name="saveResponse" type="tns:saveResponse" />

       

        <xs:complexType name="ping">

          <xs:sequence>

            <xs:element minOccurs="0" name="arg0" type="tns:testValue" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="testValue">

          <xs:sequence>

            <xs:element minOccurs="0" name="intVal" type="tns:integerValue" />

            <xs:element minOccurs="0" name="stringVal" type="tns:stringValue" />

            <xs:element minOccurs="0" name="doubleVal" type="tns:doubleValue" />

            <xs:element minOccurs="0" name="dateVal" type="tns:dateValue" />

            <xs:element minOccurs="0" name="simpleAttributeDefinition" type="tns:simpleAttributeDefinition" />

            <xs:element minOccurs="0" name="complexAttributeQueryDefinition" type="tns:complexAttributeQueryDefinition" />

            <xs:element minOccurs="0" name="spatialAttributeDefinition" type="tns:spatialAttributeDefintion" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="integerValue">

          <xs:complexContent>

            <xs:extension base="tns:numberValue">

              <xs:sequence>

                <xs:element name="value" type="xs:int" />

              </xs:sequence>

            </xs:extension>

          </xs:complexContent>

        </xs:complexType>

       

        <xs:complexType name="numberValue">

          <xs:complexContent>

            <xs:extension base="tns:value">

              <xs:sequence />

            </xs:extension>

          </xs:complexContent>

        </xs:complexType>

       

        <xs:complexType abstract="true" name="value">

          <xs:sequence>

            <xs:element minOccurs="0" name="type" type="xs:string" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="stringValue">

          <xs:complexContent>

            <xs:extension base="tns:value">

              <xs:sequence>

                <xs:element minOccurs="0" name="value" type="xs:string" />

              </xs:sequence>

            </xs:extension>

          </xs:complexContent>

        </xs:complexType>

       

        <xs:complexType name="doubleValue">

          <xs:complexContent>

            <xs:extension base="tns:numberValue">

              <xs:sequence>

                <xs:element name="value" type="xs:double" />

              </xs:sequence>

            </xs:extension>

          </xs:complexContent>

        </xs:complexType>

       

        <xs:complexType name="dateValue">

          <xs:complexContent>

            <xs:extension base="tns:value">

              <xs:sequence>

                <xs:element minOccurs="0" name="value" type="xs:dateTime" />

              </xs:sequence>

            </xs:extension>

          </xs:complexContent>

        </xs:complexType>

       

        <xs:complexType name="simpleAttributeDefinition">

          <xs:complexContent>

            <xs:extension base="tns:businessObjectAttributeDefinition">

              <xs:sequence />

            </xs:extension>

          </xs:complexContent>

        </xs:complexType>

       

        <xs:complexType abstract="true" name="businessObjectAttributeDefinition">

          <xs:sequence>

            <xs:element minOccurs="0" name="name" type="xs:string" />

            <xs:element minOccurs="0" name="displayname" type="xs:string" />

            <xs:element minOccurs="0" name="type" type="xs:string" />

            <xs:element name="editable" type="xs:boolean" />

            <xs:element minOccurs="0" name="category" type="xs:string" />

            <xs:element maxOccurs="unbounded" minOccurs="0" name="displayFormats" nillable="true" type="tns:displayFormat" />

            <xs:element maxOccurs="unbounded" minOccurs="0" name="enumeration" nillable="true" type="tns:value" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="displayFormat">

          <xs:sequence>

            <xs:element minOccurs="0" name="targetSystem" type="xs:string" />

            <xs:element minOccurs="0" name="formatString" type="xs:string" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="complexAttributeQueryDefinition">

          <xs:complexContent>

            <xs:extension base="tns:queryDefinition">

              <xs:sequence />

            </xs:extension>

          </xs:complexContent>

        </xs:complexType>

       

        <xs:complexType abstract="true" name="queryDefinition">

          <xs:sequence>

            <xs:element name="id" type="xs:int" />

            <xs:element minOccurs="0" name="category" type="xs:string" />

            <xs:element minOccurs="0" name="name" type="xs:string" />

            <xs:element minOccurs="0" name="businessObjectName" type="xs:string" />

            <xs:element minOccurs="0" name="whereClause" type="xs:string" />

            <xs:element maxOccurs="unbounded" minOccurs="0" name="parameterDefinitions" nillable="true" type="tns:queryParameterDefinition" />

            <xs:element maxOccurs="unbounded" minOccurs="0" name="selectedAttributes" nillable="true" type="tns:queryAttributeDefinition" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="queryParameterDefinition">

          <xs:sequence>

            <xs:element name="id" type="xs:int" />

            <xs:element minOccurs="0" name="name" type="xs:string" />

            <xs:element minOccurs="0" name="definitionName" type="xs:string" />

            <xs:element minOccurs="0" name="defaultValue" type="tns:value" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="queryAttributeDefinition">

          <xs:sequence>

            <xs:element minOccurs="0" name="displayname" type="xs:string" />

            <xs:element minOccurs="0" name="category" type="xs:string" />

            <xs:element minOccurs="0" name="definitionName" type="xs:string" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="spatialAttributeDefintion">

          <xs:complexContent>

            <xs:extension base="tns:businessObjectAttributeDefinition">

              <xs:sequence>

                <xs:element minOccurs="0" name="shapeType" type="xs:string" />

              </xs:sequence>

            </xs:extension>

          </xs:complexContent>

        </xs:complexType>

       

        <xs:complexType name="pingResponse">

          <xs:sequence>

            <xs:element minOccurs="0" name="return" type="tns:testValue" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="run">

          <xs:sequence>

            <xs:element minOccurs="0" name="arg0" type="tns:queryRunData" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="queryRunData">

          <xs:sequence>

            <xs:element minOccurs="0" name="referencedObjects" type="tns:referenceContainer" />

            <xs:element minOccurs="0" name="queryData" type="tns:query" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="referenceContainer">

          <xs:sequence>

            <xs:element maxOccurs="unbounded" minOccurs="0" name="businessObjectDefinitions" nillable="true" type="tns:businessObjectDefinition" />

            <xs:element maxOccurs="unbounded" minOccurs="0" name="queryDefinitions" nillable="true" type="tns:queryDefinition" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="businessObjectDefinition">

          <xs:sequence>

            <xs:element minOccurs="0" name="tableName" type="xs:string" />

            <xs:element minOccurs="0" name="name" type="xs:string" />

            <xs:element name="queryDefinitionId" type="xs:int" />

            <xs:element maxOccurs="unbounded" minOccurs="0" name="attributes" nillable="true" type="tns:businessObjectAttributeDefinition" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="query">

          <xs:sequence>

            <xs:element name="defintionId" type="xs:int" />

            <xs:element name="fromRow" type="xs:int" />

            <xs:element name="toRow" type="xs:int" />

            <xs:element name="page" type="xs:boolean" />

            <xs:element maxOccurs="unbounded" minOccurs="0" name="parameters" nillable="true" type="tns:queryParameter" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="queryParameter">

          <xs:sequence>

            <xs:element minOccurs="0" name="type" type="xs:string" />

            <xs:element name="definitionId" type="xs:int" />

            <xs:element minOccurs="0" name="value" type="tns:value" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="runResponse">

          <xs:sequence>

            <xs:element minOccurs="0" name="return" type="tns:queryResultData" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="queryResultData">

          <xs:sequence>

            <xs:element minOccurs="0" name="data" type="tns:queryResults" />

            <xs:element minOccurs="0" name="referencedObjects" type="tns:referenceContainer" />

            <xs:element minOccurs="0" name="status" type="tns:resultStatus" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="queryResults">

          <xs:sequence>

            <xs:element minOccurs="0" name="businessObjectDefinitionName" type="xs:string" />

            <xs:element name="queryDefinitionId" type="xs:int" />

            <xs:element name="paged" type="xs:boolean" />

            <xs:element name="fromRow" type="xs:int" />

            <xs:element name="toRow" type="xs:int" />

            <xs:element maxOccurs="unbounded" minOccurs="0" name="businessObjects" nillable="true" type="tns:businessObject" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="businessObject">

          <xs:sequence>

            <xs:element minOccurs="0" name="definitionName" type="xs:string" />

            <xs:element maxOccurs="unbounded" minOccurs="0" name="attributes" nillable="true" type="tns:attribute" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="attribute">

          <xs:sequence>

            <xs:element minOccurs="0" name="definitionName" type="xs:string" />

            <xs:element minOccurs="0" name="value" type="tns:value" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="resultStatus">

          <xs:sequence>

            <xs:element name="success" type="xs:boolean" />

            <xs:element minOccurs="0" name="errorMessage" type="xs:string" />

            <xs:element minOccurs="0" name="errorDetail" type="xs:string" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="getQueries">

          <xs:sequence>

            <xs:element minOccurs="0" name="arg0" type="tns:queryUserData" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="queryUserData">

          <xs:sequence>

            <xs:element name="userId" type="xs:int" />

            <xs:element name="getUserQueries" type="xs:boolean" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="getQueriesResponse">

          <xs:sequence>

            <xs:element minOccurs="0" name="return" type="tns:queryDefinitionData" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="queryDefinitionData">

          <xs:sequence>

            <xs:element minOccurs="0" name="referencedObjects" type="tns:referenceContainer" />

            <xs:element maxOccurs="unbounded" minOccurs="0" name="definitions" nillable="true" type="tns:queryDefinition" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="getQueryBusinessObjects">

          <xs:sequence />

        </xs:complexType>

       

        <xs:complexType name="getQueryBusinessObjectsResponse">

          <xs:sequence>

            <xs:element minOccurs="0" name="return" type="tns:queryResultData" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="save">

          <xs:sequence>

            <xs:element minOccurs="0" name="arg0" type="tns:queryDefinitionData" />

          </xs:sequence>

        </xs:complexType>

       

        <xs:complexType name="saveResponse">

          <xs:sequence>

            <xs:element minOccurs="0" name="return" type="tns:resultStatus" />

          </xs:sequence>

        </xs:complexType>

      </xs:schema>

        • 1. Re: DCD Generated classes issue
          SunilAdobe Adobe Employee

          I used the WSDL and the XSD. I introspected it and got the following operations, getQueries, getQueryBusinessObjects, run, save, ping. I saw that run returns QueryResultData and as per the result that you have sent, has corresponding attributes which tell that they are of type Value.

           

          I guess you are using the Flash Builder generated code to introspect and invoke this webservice. FB has no knowledge that it has to read the type in the Value class and convert it to appropriate value such as IntegerValue or StringValue.

           

          What you could do instead is there is assign your own result handler and convert it to appropriate types. For example in the super class that FB generates there is a piece of code in the constructor which tells

          _serviceControl.convertResultHandler = com.adobe.serializers.utility.TypeUtility.convertResultHandler;

           

          What you could do is have your own result handler such as myresultHandler in that call the ThypeUtility.convertResulthandler and after that convert your value types to appropriate data types.

           

          Hope this helps.

           

          Thanks

          -Sunil

          1 person found this helpful
          • 2. Re: DCD Generated classes issue
            Gr1mR33p3r Level 1

            Thanks for the idea!