「アプリケーション開発」のための汎用性が高い、かつ単純なAPIを持ったフルスタックのJavaフレーム
  • TEL: 03-6418-5221
  • TEL: 03-6418-5221

更新画面クラス

更新画面用のコンテナクラス。 wisdomx.logic.formtemplate.AbstractFormObjectクラスを継承して作成します。 

このクラスの役割は
"オブジェクトが持つ変数を定義し、値の格納をする。"
です。 

変数の定義

String、wisdomx.ui.object.*、その他

更新画面に必要な項目を定義します。項目のタイプは場合により異なります。

    private String userid = "";
    private String username = "";
    private String password = "";
    private String mailaddress = "";

    private Select sexkbn = null;
    private Select citycd = null;
    private Checkbox hobbycd = null; 

変数にsetter/getterを定義

変数のsetter/getterを定義します。 

    public String getUserid() {
        return userid;
    }

    public void setUserid(String userid) {
        this.userid = userid;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    } 

パラメータを変数に設定するsetメソッドの実装

public void set(IRequestHandler rh, IRequestParser rp) throws Exceptionの実装

コマンドクラスがこのクラスに入力値をセットする場合、抽象メソッドのAbstractFormObject#set(IRequestHandler,IRequestParser)を 呼び出します。このメソッドでは、リクエストのパラメータを変数にセットする部分を実装します。 

例)

     public void set(IRequestHandler rh, IRequestParser rp) throws Exception {
        clearMessageList();
        
        userid = rp.getString("userid");
        username = rp.getString("username");
        password = rp.getString("password");
        mailaddress = rp.getString("mailaddress");
        sexkbn.setSelected(rp.getString("sexkbn",""));
        citycd.setSelected(rp.getString("citycd"));
        hobbycd.clearChecked();
        hobbycd.setChecked(rp.getStringArray("hobbycd"));
    } 

事前に設定が必要なオブジェクト

コンストラクタで設定

入力値をselect,radio,checkなどwisdomx.ui.objectパッケージのクラスで持ち、事前に必要な場合は コンストラクタで設定します。 

例)

     public UserFo(IRequestHandler rh) throws Exception {
        IOptionsBuilder ob = Factory.getOptionsBuilder(rh);
        sexkbn = ob.build(OptionsConstants.OC_SEXKBN, DataDictionary.SEXKBN.getId());
        citycd = ob.build(OptionsConstants.OC_CITYCD, DataDictionary.CITYCD.getId());
        hobbycd = new Checkbox(DataDictionary.HOBBYCD.getId(),
                        ob.build(OptionsConstants.OC_HOBBYCD, DataDictionary.HOBBYCD.getId()).getOptions()
                        );
    } 

「コンストラクタでないといけない」というルールではなく目安にします。