2

enctype="multipart/form-data"属性とPrimefacesを持つフォームに問題があります<p:selectManyCheckBox>。これは私のコードです:

<f:view xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui" xmlns="http://www.w3.org/1999/xhtml">

<h:head />
<h:body id="expiration-body">
    <h:form id="new-expiration-form">
        <div id="form_cargar_grupo">
        <p:messages id="msgs" />

            <div class="form_cargar">
                <label>Resolución:</label>
                <p:fileUpload value="#{expirationViewEdit.file}"
                        mode="simple" required="false" />
            </div>


            <p:selectManyCheckbox value="#{expirationViewEdit.departamentIds}">
                    <f:selectItem itemLabel="Option1" itemValue="TEST1" />
                    <f:selectItem itemLabel="Option2" itemValue="TEST2" />
            </p:selectManyCheckbox>

        </div>


        <div class="camp_envio">
            <p:commandButton value="Save" actionListener="#{expirationViewEdit.onSave}" ajax="false" />                 
        </div>
    </h:form>
</h:body>

私が抱えている問題は、selectManyCheckBoxの複数のオプションを選択した場合です。バッキングBeanリストには要素が1つしかなく、フォームが送信された後、1つのチェックボックスのみが選択されていることがわかります(もう1つは選択解除されます) 。

フォームのenctype="multipart / form-data"属性を削除すると、チェックボックスは正常に機能することがわかりましたが、サーバーにファイルをアップロードするには、そのプロパティが必要です。

これに対する回避策はありますか?それとも私は何か間違ったことをしているのでしょうか?

前もって感謝します!

4

0 に答える 0