Я создал портлет, в котором программно добавляю пользователей. Теперь я могу добавлять и просматривать пользователей. Чтобы изменить пользователя, я создал <liferay-ui:icon-menu>
и добавил две опции (Редактировать и Деактивировать). Теперь, нажав или выбрав соответствующие кнопки действий пользователей (Изменить/Деактивировать), мне нужно отправить выбранный идентификатор пользователя в мой класс действий. Как только я получу идентификатор пользователя в своем классе действий, я вызову метод UserLocalServiceUtil.updateUser()
с обновленными значениями. Может ли кто-нибудь сказать мне, как я могу отправить выбранный идентификатор пользователя в свой класс действий.
Мой код выглядит следующим образом:
View.jsp
<liferay-ui:search-container delta="10" emptyResultsMessage="no-users-were-found">
<liferay-ui:search-container-results
results="<%=UserLocalServiceUtil.getUsers(searchContainer.getStart(), searchContainer.getEnd())%>"
total="<%=UserLocalServiceUtil.getUsersCount()%>" />
<liferay-ui:search-container-row className="com.liferay.portal.model.User" keyProperty="userId" modelVar="user">
<liferay-ui:search-container-column-text name="name" value="<%= user.getFullName() %>"/>
<liferay-ui:search-container-column-text name="first-name" property="firstName" />
<liferay-ui:search-container-column-text name="last-name" property="lastName" />
<liferay-ui:search-container-column-text name="screen-name" property="screenName"/>
<liferay-ui:search-container-column-jsp align="right" path="/html/users/custom_user_actions.jsp" />
</liferay-ui:search-container-row>
<liferay-ui:search-iterator />
</liferay-ui:search-container>
<liferay-ui:search-container delta="10" emptyResultsMessage="no-users-were-found" />
custom_user_actions.jsp
<liferay-ui:icon-menu>
<portlet:actionURL name="edit" var="edit">
<portletaram name="action" value="edit" />
</portlet:actionURL>
<liferay-ui:icon image="edit" message="Edit" url="<%=edit.toString() %>" />
<portlet:actionURL name="deactivate" var="deactivate">
<portletaram name="action" value="deactivate" />
</portlet:actionURL>
<liferay-ui:icon image="deactivate" message="deactivate" url="<%= deactivate.toString() %>" />
</liferay-ui:icon-menu>
Класс действий
public void edit(ActionRequest request, ActionResponse response) throws com.liferay.portal.kernel.exception.PortalException, com.liferay.portal.kernel.exception.SystemException{
System.out.println("<<<< Controller add() method has been called >>>>>>>>>");
}
public void deactivate(ActionRequest request, ActionResponse response) throws com.liferay.portal.kernel.exception.PortalException, com.liferay.portal.kernel.exception.SystemException{
System.out.println("<<<< Controller delete() method has been called >>>>>>>>>");
}
Может ли кто-нибудь предложить мне, как передать выбранный идентификатор пользователя строки моему классу действий.
Заранее спасибо.