为什么嵌套在h:dataTable中的输入(例如h:inputText)不更新Bean模型?

为什么嵌套在h:dataTable中的输入(例如h:inputText)不更新Bean模型?,第1张

为什么嵌套在h:dataTable中的输入(例如h:inputText)不更新Bean模型?

A

String
是不可变的。它没有值的二传手。您需要将其包装在bean(或称为POJO)中。

public class Musician {    private String preferredGenre;    // Add/generate constructor, getter, setter, etc.}

然后按如下所示更改您的托管bean。

@ManagedBean@ViewScopedpublic class NewMusician {    private ArrayList<Musician> musicians = new ArrayList<Musician>();    public NewMusician() {        musicians.add(new Musician("olo"));    }    public ArrayList<Musician> getMusicians() {        return musicians;    }    public void saveNewMusician() {        // ...    }    // ...}

和您的数据表

<h:dataTable value="#{newMusician.musicians}" var="musician">    <h:column>        <h:inputText value="#{musician.preferredGenre}" />    </h:column></h:dataTable>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5094544.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-16
下一篇 2022-11-16

发表评论

登录后才能评论

评论列表(0条)

保存