dataTable, inputText и сохранение значения «не прямой» переменной компонента - PullRequest
2 голосов
/ 01 сентября 2011

У меня есть dataTable со списком inputTexts:

<h2>
    Attributes
</h2>
<h:dataTable
    value="#{detailModel.getAfterObjectAttributeSpecifications()}"
    var="specification"
    styleClass="waiFormTable" >
    <h:column>
        #{specification.name}:
    </h:column>
    <h:column>
        <h:inputText id="attribute" value="#{detailModel.getAfterObjectAttribute(specification.name)}" disabled="#{detailModel.mode == detailModel.viewMode}"/>  
    </h:column>
</h:dataTable>

Значение inputText не является полем прямого бина (detailModel.getAfterObjectAttribute (spec.name)).Если я изменю значение и захочу сохранить его, как мне поступить?

Спасибо за любую помощь, Франческо

1 Ответ

1 голос
/ 01 сентября 2011

Вы не можете. Это должна быть недвижимость или, по крайней мере, значение Map. Э.Г.

<h:dataTable
    value="#{detailModel.afterObjectAttributeSpecifications}"
    var="specification"
    styleClass="waiFormTable" >
    <h:column>
        #{specification.name}:
    </h:column>
    <h:column>
        <h:inputText id="attribute" value="#{detailModel.afterObjectAttributes[specification.name]}" disabled="#{detailModel.mode == detailModel.viewMode}"/>  
    </h:column>
</h:dataTable>

с

public Map<String, String> getAfterObjectAttributes() {
    return afterObjectAttributes;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...