Почему свойство объекта имеет значение null? - PullRequest
0 голосов
/ 20 сентября 2010

Ниже приведен мой класс, который просто читает XML-файл и предоставляет содержимое в формате e4x. К сожалению, после того, как конструкторы выполняются и устанавливают свойство xmlProperties с ожидаемыми значениями, оно как-то становится нулевым. Кто-нибудь знает, что я делаю не так?

    public class WebService
    {
    private var _propertiesReader:HTTPService;
    private var _xmlProperties:XML;

    public function WebService()
    {
        _propertiesReader = new HTTPService();
        _propertiesReader.url = "../resources/properties.xml";
        _propertiesReader.resultFormat = "e4x";
        _propertiesReader.contentType = "application/xml";
        _propertiesReader.addEventListener(ResultEvent.RESULT, function(event:ResultEvent):void
        {
            _xmlProperties = XML(event.result);
        });
        _propertiesReader.addEventListener(FaultEvent.FAULT, function(event:FaultEvent):void 
        {
            Alert.show("Unable to load properties content: " + event.fault.message + "\nPlease try again later.", "Properties File Load Error");    
        });
        _propertiesReader.send();
    }

    public function get xmlProperties():XML
    {
        return _xmlProperties;
    }
    }

1 Ответ

1 голос
/ 20 сентября 2010

_xmlProperties устанавливается с помощью вызова File Load (через событие обратного вызова).Он не устанавливается непосредственно в конструкторе.

Вы уверены, что ожидаете завершения вызова и события обратного вызова, прежде чем проверить значение _xmlProperty?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...