I am a complete newbie to Flex, ActionScript et al, so please
forgive me if my questions appear simplistic.
I've implemented, and got working, the sample app which invokes a
web service and displays the Top 5 popular posts from a blog service.
I now want to modify this app so it calls my own homegrown web
service. I have been able to get the invocation working, and I get a
valid response, which I confirmed by displaying the lastResult
object in a textbox.
My problem now is I want to parse through the result document, which
contains a namespace, and populate items on the form - I have not
yet been successful in my attempts.
Here is the source code to my MXML application, followed by the WS
response document;
MXML App
?xml version=1.0 encoding=utf-8?
mx:Application xmlns:mx=http://www.adobe.com/2006/mxml;
layout=absolute
creationComplete=wsBlogAggr.getMostPopularPosts.send()
mx:Script
![CDATA[
import mx.controls.Alert;
private namespace csw
= http://kevin.company.com/services/webservices/adobe/blogSvc/blogPo
rt;
use namespace csw;
]]
/mx:Script
mx:WebService id=wsBlogAggr
wsdl=http://localhost:9400/services/adobe?wsdl;
useProxy=false
mx:operation name=getMostPopularPosts
resultFormat=e4x
mx:request format=xml
ns1:getMostPopularPosts
xmlns:ns1=http://kevin.company.com/services/webservices/adobe/blogSv
c/blogPort
ns1:daysBack10.0/ns1:daysBack
ns1:limit5.0/ns1:limit
/ns1:getMostPopularPosts
/mx:request
/mx:operation
/mx:WebService
mx:Panel x=10 y=10 width=475 height=400
layout=absolute title=Most Popular Posts
mx:TextArea
text={wsBlogAggr.getMostPopularPosts.lastResult}/
mx:ComboBox x=48 y=30 id=cbxNumPosts
change=wsBlogAggr.getMostPopularPosts.send()
mx:Object label=Top 5 data=5/
mx:Object label=Top 10 data=10/
mx:Object label=Top 15 data=15/
/mx:ComboBox
mx:DataGrid x=48 y=80 id=dgTopPosts
columnWidth=400
dataProvider={wsBlogAggr.getMostPopularPosts.lastResult}
width=350
mx:columns
mx:DataGridColumn headerText=Top
Posts
dataField=*::getMostPopularPostsResponse.*::ColumnList.*::row.*::ite
m/
mx:DataGridColumn
headerText=Clicks
dataField=getMostPopularPostsResponse.ColumnList.row.item
width=75/
/mx:columns
/mx:DataGrid
mx:LinkButton x=48 y=264 label=Select an item
and click here for full post click=navigateToURL(new URLRequest
(dgTopPosts.selectedItem.postLink));/
/mx:Panel
/mx:Application
WS Response Doc
---
ns1:getMostPopularPostsResponse xmlns:soap-
env=http://schemas.xmlsoap.org/soap/envelope/;
xmlns:ns1=http://kevinobrien.composite.com/services/webservices/adob
e/blogSvc/blogPort xmlns:xsi=http://www.w3.org/2001/XMLSchema-
instance
ns1:ColumnList
ns1:row
ns1:itempostId/ns1:item
/ns1:row
ns1:row
ns1:itemclicks/ns1:item
/ns1:row
ns1:row
ns1:itemdateTimeAggregated/ns1:item
/ns1:row
ns1:row
ns1:itemfeedId/ns1:item
/ns1:row
ns1:row
ns1:itemfeedName/ns1:item
/ns1:row
ns1:row
ns1:itempostTitle/ns1:item
/ns1:row
ns1:row
ns1:itempostExcerpt/ns1:item
/ns1:row
ns1:row
ns1:itempostLink/ns1:item
/ns1:row
/ns1:ColumnList
/ns1:getMostPopularPostsResponse
I tried creating an XMLListCollection object, but I got a compile
error that, being a newbie, did not make sense. Here is the syntax I
used.
mx:XMLListCollection id=xc
source={wsBlogAggr.getMostPopularPosts.lastResult}/
Can anyone help with info on how to parse the response doc?
Yahoo! Groups Sponsor ~--
Yahoo! Groups gets a make over. See the new email design.
http://us.click.yahoo.com/XISQkA/lOaOAA/yQLSAA/nhFolB/TM
~-
--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com
Yahoo! Groups Links
* To visit your group on the web, go to:
http://groups.yahoo.com/group/flexcoders/
* To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
* Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/