글을 써보려 한다.
주제는 "Flex에서 XML 파일 불러 오는 방법들"
1. Httpservice를 이용하여 XML 파일 불러 오기
나는 이것을 이용하여 XML 파일을 가장 많이 불러 온다.. (다른 분들은 어떠신지..^^)
방법은...
<mx:httpservice id="userRequest" url="xmlFolder/aa.xml" useProxy="false"
result="userResultHandler(event)" fault="userFaultHandler(event)" />
이런 식으로 상단에 명시를 한다. result="userResultHandler(event)" fault="userFaultHandler(event)" />
id는 httpservice를 쓰는 id 이고.. url에 원하는 파일 이름을 명시 한다. (절대경로 or 상대경로)
result 는 httpservice의 결과값을 처리해 주는 부분이고, fault 는 httpservice의 실패시 에러 처리 부분이다.
<mx:script> 부분에 userResultHandler(event)를 만든다. 값을 받아 오는 방법은 아래를 보자.
ex) private function userResultHandler(event:ResultEvent):void
{
var aaaaa:String = userRequest.lastResult.root.aa;
}
{
var aaaaa:String = userRequest.lastResult.root.aa;
}
aa.xml
<root>
<aa>"안녕" </aa>
</root>
<root>
<aa>"안녕" </aa>
</root>
이렇게 받았으면.. 저 결과를 실행 시켜주는 것이 필요하다.
=> userRequest.send();
이렇게 실행 하면 된다..
어디에??? xml을 받아오고 싶은 곳에서 실행을 시켜주고.. 그 결과값을 받아 처리 하면 끝! ^^
2. Model & ArrayCollection 이용하기
예제를 보면 쉽게 이해 할 수 있을 듯하다. (예제는.. 예제로 배우는 플랙스 3.0 에서 발췌)
<mx:Model id="myData" source="data/aa.xml" />
<mx:ArrayCollection id="myAc" source="{ArrayUtil.toArray(myData.aa)}" />
<mx:ArrayCollection id="myAc" source="{ArrayUtil.toArray(myData.aa)}" />
이런 식으로 데이터를 ArrayCollection에 담는다..
흠... 2번이 더 쉬운듯 하네...ㅜ.ㅜ
또 다른 방법이 있나요?? 혹시 있으시면 댓글 및 트랙백!! 부탁 드립니다.
댓글 없음:
댓글 쓰기