gpt4 book ai didi

java - 如何通过多个页面保存一个对象

转载 作者:行者123 更新时间:2023-11-30 05:09:10 24 4
gpt4 key购买 nike

我有一个对象的 ArrayList,我按如下方式使用它们:

<ui:repeat value="#{BookReview.books}" var="book" >
<li>
<h:commandLink value="#{book.bookName}" action="detail" />
</li>
</ui:repeat>

在详细信息页面中,我显示了该书的评论,并且我有一个用于注册新评论的表单:

<h:form>
Name:<h:inputText value="#{Comment.author}" />
Rate:<h:inputText value="#{Comment.rate}" />
Text:<h:inputText value="#{Comment.comment}" />
<h:commandButton action="#{book.addComment(Comment)}" value="Add Comment" />
</h:form>

我的问题是book直到下一个请求和 #{book.addComment(Comment)} 才会保留结果 Target Unreachable, identifier 'book' resolved to null .

我尝试将这本书注释为 RequestScoped ,没用,那我修改为ViewScoped ,也不起作用,然后我尝试使用 <inputHidden >保留该对象,但它只使用 .toString()我无法重用该对象。

我不想使用 session 来存储对象,因为我只需要一次,并且我认为我不想使用转换器,因为 Book有一个ArrayList评论(我也认为这太麻烦和复杂)

最佳答案

将您的 BookReview bean 放入 session 范围(或者,如果您使用的是 JSF-2.0 - 则让它具有 view范围)。

关于java - 如何通过多个页面保存一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4069683/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com