数据未在Flash Builder中公开

时间:2010-02-26 22:14:30

标签: xml flex arrays flash-builder

当我运行flex应用程序时,我希望在列表组件中看到来自我的数据库的users表的25条记录,而我看到的只有25条:[object User]

我尝试按照本教程:http://www.adobe.com/devnet/flashcatalyst/articles/building_datacentric_app_flashcast_flashbuilder_03.html但是当他使用ColdFusion时,我正在使用HTTP服务类型。基本上,我做了什么:

  1. 连接到数据服务(Http)
  2. 输入了一个xml数据的URL,方法GET,getAllItems的操作
  3. 搜索名称字符串作为此操作参数的数据类型
  4. 用户作为服务名称(services.users作为服务包)
  5. 测试操作(需要验证)和单击测试,显示xml数据
  6. 配置返回类型,选择User as root(不是用户),然后单击它为“is Array?”选项
  7. 然后选择了列表组件,选中了“新服务调用”,对于bind_to_field我检查了“id”(不确定绑定到字段的确切位置)
  8. 以下是生成的相关内容:

                protected function list_creationCompleteHandler(event:FlexEvent):void
            {
                getAllItemsResult.token = users.getAllItems(/*Enter value(s) for */ search);
            }
    
        <fx:Declarations>
        <s:CallResponder id="getAllItemsResult" />
        <users:Users id="users" fault="Alert.show(event.fault.faultString + '\n' + event.fault.faultDetail)" showBusyCursor="true"/>
    </fx:Declarations> 
    
                <s:List skinClass="components.DataList3" x="65" y="96" change="list_changeHandler()" id="list" creationComplete="list_creationCompleteHandler(event)" dataProvider="{getAllItemsResult.lastResult}" labelField="id">
            </s:List>
    

    我注意到一条错误消息“未定义属性搜索的访问”。但这又是生成的代码,所以我不知道应该在哪里定义。我主要担心的是它没有显示来自数据库的记录(通过xml),而只是显示: [对象用户]

    感谢您的任何建议。

1 个答案:

答案 0 :(得分:1)

您所看到的是Object.toString()的默认impl,它指示正在显示的对象的类型。看起来数据实际上正常加载,您只是没有配置List以正确显示它。我看到你指定labelField值为“id”但是这个属性实际上并不存在于被返回的对象上?您可能想为labelField尝试另一个值。