0

我正在尝试将数据库中的值分配给 Flex 应用程序中的变量。到目前为止,我阅读了一些想法,目前我有以下使用 PHP Web 服务的代码:

protected function btnSubmitUser_clickHandler(event:MouseEvent):void
        {
            username = txtUsername.text;
            password = txtPassword.text;
            serialno = txtSerialNo.text;
            userName.writeUTFBytes(username);
            passWord.writeUTFBytes(password);
            serialNo.writeUTFBytes(serialno);
            EncryptedLocalStore.setItem("Username", userName);
            EncryptedLocalStore.setItem("Password", passWord);
            EncryptedLocalStore.setItem("Serial", serialNo);
            getRepnameByUsernameResult2.addEventListener(ResultEvent.RESULT, onMyResult); 
            getRepnameByUsernameResult2.token = repnameService.getRepnameByUsername(username);
        }

        protected function onMyResult(event:ResultEvent):void{ 
            repServ = getRepnameByUsernameResult2.lastResult as Repname; 
            repid = repServ.RepID; 
            RepID.writeInt(repid); 
            EncryptedLocalStore.setItem("Rep", RepID); 
            lblTestRep.text = RepID.toString();
        } 

该标签是一个测试标签,用于查看是否正确分配了数据。不幸的是,我在它声明的地方遇到了错误:

Error #1009: Cannot access a property or method of a null object reference.
at views::SettingsView/onMyResult()[C:\Users\Justin\Adobe Flash Builder 4.6\Rep Aware\src\views\SettingsView.mxml:62]

repid = repServ.RepID;在上面的代码中发现了这个错误。

任何关于我做错了什么的帮助将不胜感激。

4

1 回答 1

0

该错误意味着repServ. null所以属性lastResult在:

repServ = getRepnameByUsernameResult2.lastResult as Repname;

要么是null,要么不是类型Repname

第二个选项是可能的,因为使用 return 将对象转换为不相关的as类型null。如果你这样做,同样的演员会抛出一个异常:

repServ = Repname(getRepnameByUsernameResult2.lastResult);
于 2012-03-04T17:52:07.587 回答