1

値を使用して変数を初期化するとエラーが発生します..私のプログラムは次のようになります:

public class OTPController extends GenericForwardComposer implements Initiator{
    private String valueOTP;
    private Rusers user;
    public void doInit(Page arg0, Map arg1) throws Exception {
            user=(Rusers) arg1.get("user");
            System.out.println("user Id="+user);
    }

initの値を出力すると、値はnullです..

次のようなセッション値を取る場合:

    public void doInit(Page arg0, Map arg1) throws Exception {
            user=(Rusers) session.getAttribute("user");
            System.out.println("user Id="+user);
    }

値もnullです..

セッションを次のように設定します。

session.setAttribute("user", user);

誰でも私を助けることができますか?私は非常に混乱しています.そのnull初期化の後にアクションをヒットし、結果を出力すると、たとえば:

public void onClick$evaluate(Event event){
        String key=(String) session.getAttribute("key");
        if(valueOTP.equals(key)){ 
            System.out.println("user Id="+user);
            session.invalidate();
            session.setAttribute("user", user);
            execution.sendRedirect("./Welcome.zul");
        }else{
            System.out.println("OTP Failed");
            execution.sendRedirect("./Login.zul");
        }
    }

値はもうnullではなく表示されます..しかし、変数を初期化すると、値はnullになります..誰かが私を助けることができますか?

ご清聴ありがとうございました。下手な英語で申し訳ありません..

4

1 に答える 1