Flex3 책을 다 읽고 책거리 기념 간단 Flex Application를 만들었습니다. Naver Open - Book Search를 이용해서 책을 검색 해주는 기능을 제공합니다. 만들기 시작하면서 많은 에러 메시지를 만났습니다. 그 중에서 가장 인상 깊었던 에러 메시지(?)는 이녀석 입니다.
" warning: unable to bind to property 'XXX' on class 'Object' (class is not an IEventDispatcher) "

원하는 결과는 화면에 출력되지만 warning가 출력됩니다. warning메시지는 Error 메시지 보다도 더 신경을 거슬리게 합니다. 그래서 구글링을 시작했습니다.
검색을 통해서 여러가지 방법들을 접했지만 가장 간단한 방법은 ObjectProxy를 사용하는 것입니다.
처음에는 DataType를 명확하게 해주면 되지 않을까 생각했는데 ObjectProxy를 이용해서 이 문제를 해결하는 소스를 보고 알게된 것은 list기반의 controller의 dataProvider로 Object/ArrayCollection을 지정하면 flash player가 이 녀석들의 변화를 제대로 인식하지 못한다는 것입니다. 그것이 warning의 이유였습니다. 실제로 해결방법인 ObjectProxy 클래스는 등록되어 있는 데이터의 변경을 추척하는 용도로 사용 합니다.

참고 : Object/Array and ObjectProxy/ArrayCollection binding problems

이런 형태로 사용하시면 됩니다.
같은 고민을 하시고 계신 분들을 위해서 남겨봅니다.

Posted by 달빛변신

댓글을 달아 주세요

  1. 오빈여 2009.09.18 11:02  댓글주소  수정/삭제  댓글쓰기

    구글링하다가 원하는 답을 여기서 찾았네요
    감사합니다 ^^

    보관용으로 담아갑니다

    • 달빛변신 2009.09.23 14:46 신고  댓글주소  수정/삭제

      저도 누군가에게 좋은 정보를 드릴 수 있어서 좋습니다.
      플렉스 관련해서 자주 만날 수 있는 에러들을 몇 개 더 올려봐야 겠습니다. ^^

  2. 아침에밀크 2012.08.25 18:43  댓글주소  수정/삭제  댓글쓰기

    워닝 메세지 보기 싫었는데 좋은 정보 감사 합니다.