2009년 7월 7일 화요일

[Flex] XML, Flex에서 사용하기

오늘은 후배가.. XML 파일 읽어오는 부분에 대해 질문을 하여.. 겸사겸사 정리 할겸 해서
글을 써보려 한다.

주제는 "Flex에서 XML 파일 불러 오는 방법들"

1. Httpservice를 이용하여 XML 파일 불러 오기
 나는 이것을 이용하여 XML 파일을 가장 많이 불러 온다.. (다른 분들은 어떠신지..^^)
 방법은...
 
<mx:httpservice id="userRequest" url="xmlFolder/aa.xml" useProxy="false"
        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;
     }
   
  aa.xml
        <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)}" />

  이런 식으로 데이터를 ArrayCollection에 담는다..
  흠... 2번이 더 쉬운듯 하네...ㅜ.ㅜ

  또 다른 방법이 있나요?? 혹시 있으시면 댓글 및 트랙백!! 부탁 드립니다. 

댓글 없음:

댓글 쓰기