gpt4 book ai didi

java - 如何从 JSF 中的自定义类中的自定义类访问属性?

转载 作者:行者123 更新时间:2023-12-01 16:07:18 25 4
gpt4 key购买 nike

我有一个类 Person 和一个类 Name。名称包含两个字符串firstName 和lastName。 Person 包含一个 Name 对象以及一些附加信息。如何使用 JSF EL 访问 person 中的firstName 和lastName 属性。我正在使用带注释的 JSF 2.0。

我有一个注册页面,我正在其中创建一个新人。我有一个名为 PersonBean 的托管 bean,其中包含一个 Person 的实例。我尝试使用以下标记在我的 xhtml 页面中设置第一个:#{personBean.person.name.firstName} 。这给了我一个空错误。

具体代码:



<h:inputText label="First Name" id="fname" value="#{personBean.user.name.firstName}"
required="true"/>

确切的错误消息: "value="#{personBean.user.name.firstName}": Target Unreachable, 'null' returned null".

我认为此错误源于以下事实:当 Person 对象尚未实例化时,我试图从 Name 对象调用 getters/setters。

谢谢

最佳答案

我认为您已经给出了自己的答案:“Person 对象尚未实例化”JSF 不会为您创建对象,除非它们是托管 bean。因此,您应该在访问名称之前实例化 Person 对象。您可以在实例化 bean 时或在导致显示组件的用户操作期间执行此操作。

您可能不想将 Person 对象设为托管 Bean,但您可以这样做,然后将其注入(inject)到 personBean 中:http://balusc.blogspot.com/2006/06/communication-in-jsf.html#InjectingManagedBeansInEachOther

关于java - 如何从 JSF 中的自定义类中的自定义类访问属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2358159/

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