0

Flex-Blazeds-java ...を使用しているアプリケーションでは、Flexアプリケーション側に2つのmxmlファイルがあります

  1. Main.mxml
  2. Login.mxml

Main.mxmlファイルにボタンがありLoginますこのボタンをクリックしてくださいこのファイルで呼び出されるポップアップが1つ開きますLogin.mxml Javaを接続するための認証ロジックがあります...サンプルコード`

public var userService:UserService = new UserService();
[Bindable] public var userVO1:UserVO = new UserVO();
protected function loginUser(event:MouseEvent):void
{

var rpcAuthenticateUser:AsyncToken = userService.authenticateUser(userid_id.text, password_id.text);//Hear authenticateUser(-,-) is a java method it return UserVO object
rpcAuthenticateUser.addResponder(new mx.rpc.Responder(handler_success, handler_failure));

}
private function handler_failure(event:FaultEvent): void {
Alert.show("in handler_failure :" + event.message);

}


   private function handler_success(event:ResultEvent): void {
    userVO = event.result as UserVO;
     Alert.show("test "+userVO.loginId);
        }

ログインがデータベースロジックに従って完全に機能していることを聞きます。また、ResultEventの場合、アラートボックスに正しい値が表示されます(例:loginIdは' narasimham')...そしてLogin.mxmlではすべてが完全に機能しています。

Now The Problem Start...

UserVOMain.mxmlファイルのオブジェクトを使用したいので、次のコードを使用しています。

     public var loginUserVar:Login = new Login();
  protected function afterLoginUser(event:FlexEvent):void
   {
    Alert.show("LoginId ="+loginUserVar.userVO.loginId);        
   }

実際、このアラートボックスは価値を与えていると思いますnarasimhamが、それはnull価値を与えています。

なぜNull値を与えるのですか?変数を作成するためにスコープが指定されていますか?

4

2 に答える 2

1

handler_successの値を設定する必要があります。userVO1そうしないと、mxmlファイル以外では使用できません。また、の代わりにafterLoginUserとして参照する必要があります。userVO1userVO

于 2012-11-29T12:39:58.490 に答える
0

正しいEthrbunnyuserVOオブジェクトの値を保存していないため、外部のmxmlファイルで使用できません。

Login.mxmlファイルのFlex(3.5)アプリケーションでは、次のコードを追加しています...

Application.application.userVO = event.result as UserVO;
//Hear userVO is Object defined in Main.mxml file....
于 2012-11-30T07:33:32.850 に答える