0

さまざまなクラスの多くの属性を使用するページ jsp があるため、コントローラーで 2 つの @ModelAttribute を使用する必要があります。また、1 つのコントローラーで 2 つの @ModelAttribute を使用する場合、 Form に 2 つの commandName を配置する必要があります。それは可能ですか?

これは私のフォームです: (Fonction はクラス Activite の属性であり、Name of Etablissement はクラス Etablissement の属性です:

                    <table id="tabmenu">
                        <tr>
                            <td>Fonction :</td>
                            <td><form:input type="text" class="round default-width-input" path="fonction" /></td>
                        </tr>
                        <tr>
                            <td>Nom d'établissement :</td>
                            <td><form:input type="text" class="round default-width-input" path="noml"/></td>
                        </tr>
                        <tr>
                            <td>Ville :</td>
                            <td><form:input type="text" class="round default-width-input" path="villel"/></td>
                        </tr>
                        <tr>
                            <td>Délégation :</td>
                            <td><form:input type="text" class="round default-width-input" path="cd_reg" /></td>
                        </tr>
                        <tr>
                            <td>Date début :</td>
                            <td><form:input type="text" name="date" class="tcal" value="" path="dateAffect"/></td>
                        </tr>
                        <tr>
                            <td>Date fin :</td>
                            <td><form:input type="text" name="date" class="tcal" value="" path="dateAffect"/></td>
                        </tr>
                        <tr>
                            <td><input
                                class="button round blue image-right ic-right-arrow"
                                type="submit" value="Créer" /></td>
                            <td><input
                                class="button round blue image-right ic-right-arrow"
                                type="reset" value="Initialiser" /></td>
                        </tr>
                    </table>
                    </form:form>

コントローラー:

@RequestMapping(value="/fiche_service",method=RequestMethod.GET)
public ModelAndView Fiche_service(@ModelAttribute Activite activite,@ModelAttribute Etablissement etabl,ModelMap model) {
    Agent ag = new Agent();
    return new ModelAndView("FicheService","agent",ag);

}

POJO をアクティブにします。

public class Activite {

    int code_act;
    String cd_modaff;
    String cd_etab;
    String fonction;
    int ppr;
    String CINA;
    String CINN;

    public Activite() {
        super();
    }
    //getters and setters ....

}

Etablissement POJO

public class Etablissement {

    String code_etab;
    String code_gipe;
    String noml;
    String noma;
    String cd_orgTutel;
    String cd_reg;
    String cd_prov;
    String cd_com;
    String cd_mil;
    String cd_cauto;
    String adressel;
    String cp;
    String villel;

  //getters and sitters 
}
4

1 に答える 1

1

フォームごとに 1 つのコマンド オブジェクトしか持てないと思います。複数のフォームがある場合、複数のコマンド オブジェクトを持つことができるのは自分だけです。同じフォームに複数のコマンド オブジェクトが必要ですか? 必要なプロパティは同じフォームに属しているため、必要なプロパティを 1 つのクラスにまとめることをお勧めします。

于 2013-05-23T04:52:42.940 に答える