Подтвердить что ты не робот

JSF: h: outputText; как показать тире, когда значение является пустой строкой?

Я использую h: теги outputText для отображения данных только для чтения. Пример:

<h:outputText value="Phone Number:" />
<h:outputText value="#{userHandler.user.phoneNumber}" />

Когда "phoneNumber" - пустая строка или нуль, я хочу отобразить тире "-" в качестве значения.

Есть ли простой способ сделать это, возможно, с помощью языка выражений или чего-то еще?

Кстати, я думал о добавлении методов к классу User, например getPhoneNumberDisplayText(), который мог бы выполнять проверку внутри, но я с тех пор, как это проблема с представлением, я бы лучше сохранил код на странице JSF.

4b9b3361

Ответ 1

<h:outputText value="#{userHandler.user.phoneNumber != null 
    ? userHandler.user.phoneNumber : '-'}" />

Или вы можете создать новый outputText:

<h:outputText rendered="#{userHandler.user.phoneNumber == null}" value="-" />