如何在可能为null的对象上输出字符串属性

jom*_*hke 3 java jsf seam

作为seam JSF页面中dataTable的一部分,一列需要输出名称:

<h:outputText value="#{listing.staffMember.name}"/>
Run Code Online (Sandbox Code Playgroud)

问题是"staffMember"在某些列表中可能为null,因此我收到错误:

javax.el.ELException: /xxxxx.xhtml @42,67 value="#{listing.staffMember.name}": Error reading 'name' on type xxxx.model.AgentStaff_$$_javassist_152
Run Code Online (Sandbox Code Playgroud)

如果值为null,我不希望呈现任何文本.我试过这个:

<h:outputText value="#{listing.staffMember.name}" rendered="#{listing.staffMember != null}"/>
Run Code Online (Sandbox Code Playgroud)

但同样的错误出现了.

如何在可能为null的对象上输出属性?

Fab*_*eeg 5

您可以使用三元运算符,它看起来像:

value="#{listing.staffMember != null ? listing.staffMember.name : 'None'}"
Run Code Online (Sandbox Code Playgroud)

或者你可以使用c:if标签.