Как я могу манипулировать строкой в ​​теге JSF? - PullRequest
3 голосов
/ 26 октября 2011

Учитывая этот код,

<rich:dataTable id="list" value="#{testBeen.dataModel}" var="test" rows="#{testBeen.dataModel.pageSize}">
    ...
    <h:outputText value="#{test.WEEK}" />  

Мне нужно манипулировать #{test.WEEK} и заменить символ ) на ], как я могу это сделать?

Я попробовалниже, но это не работает:

<%String a = test.WEEK; a.replace("a", "b"); %>
<%=a %>

Как получить строку из JSF и передать ее обратно в JSF?

Ответы [ 3 ]

16 голосов
/ 26 октября 2011

Для этой конкретной простой цели я бы просто использовал JSTL functions taglib.Есть функция fn:replace().

Например,

<%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
...
<h:outputText value="#{fn:replace(test.WEEK, ')', ']')}" />  

Вы должны наверняка никогда использовать скриптлетов <% %> на страницах JSF.

3 голосов
/ 26 октября 2011

Вы можете написать собственный конвертер и параметризовать его путем поиска и замены строки.См. Это введение JSF для неверующих: преобразование и проверка JSF

0 голосов
/ 26 октября 2011

Хорошей практикой было бы делать это в бобе, а не в лицевой стороне.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...