Скрипты в Liferay

Что я могу сделать с этим скриптлетом

<%
    ResultRow row = (ResultRow) request.getAttribute(BookAndAuthor.SEARCH_CONTAINER_RESULT_ROW);

    Book book = (Book) row.getObject();
%>

Если я хочу использовать value="${book.BookId} в этом коде?

<liferay-ui:icon-menu>

     <portlet:actionURL name="deleteBook" var="deleteBookVar">
         <portlet:param name="bookId"     value="<%=String.valueOf(book.getBookId())%>" />
     </portlet:actionURL>

</liferay-ui:icon-menu>

1 ответ

Это немного сложно, но я думаю, это должно работать. Используйте переменную для хранения значения константы SEARCH_CONTAINER‌​_RESULT‌​_ROW

<c:set var="resultRowConstant" value="<%=BookAndAuthor.SEARCH_CONTAINER‌​_RESULT‌​_ROW%>" />чем читать атрибут, вы должны быть в состоянии использовать скобки для доступа к "динамическим" свойствам:<c:set var="row" value="${[resultRowConstant]}"/> и это будет держать ResultRow объект, чем вы получаете доступ к объекту книги через

${row.object}
Другие вопросы по тегам