Jsp 如何将所选用户ID传递给action类?

Jsp 如何将所选用户ID传递给action类?,jsp,liferay,liferay-6,portlet,liferay-theme,Jsp,Liferay,Liferay 6,Portlet,Liferay Theme,我已经创建了一个portlet,在其中我以编程方式添加用户。我现在可以添加和查看用户。为了编辑用户,我创建了,并添加了两个选项(编辑和停用)。现在,单击或选择相应的用户操作按钮(编辑/停用),我需要将所选用户ID发送到我的操作类。在action类中获得userID后,我将使用更新的值调用UserLocalServiceUtil.updateUser()方法。任何人都可以告诉我如何将所选的用户id发送到我的操作类 我的代码如下: <portlet:actionURL name="edit"

我已经创建了一个portlet,在其中我以编程方式添加用户。我现在可以添加和查看用户。为了编辑用户,我创建了
,并添加了两个选项(编辑和停用)。现在,单击或选择相应的用户操作按钮(编辑/停用),我需要将所选用户ID发送到我的操作类。在action类中获得userID后,我将使用更新的值调用
UserLocalServiceUtil.updateUser()
方法。任何人都可以告诉我如何将所选的用户id发送到我的操作类

我的代码如下:

<portlet:actionURL name="edit" var="edit">
          <portletaram name="selectedId" value="<%String.valueOf(user.getUserId())%>" />
  </portlet:actionURL>
  <liferay-ui:icon image="edit" message="Edit" url="<%=edit.toString() %>" />
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" />
<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>

自定义用户操作.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" />
<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 >>>>>>>>>");

          }
public void edit(ActionRequest请求,ActionResponse响应)抛出com.liferay.portal.kernel.exception.PortalException,com.liferay.portal.kernel.exception.SystemException{
System.out.println(“>>>>”);
}
public void deactivate(ActionRequest请求、ActionResponse响应)抛出com.liferay.portal.kernel.exception.PortalException、com.liferay.portal.kernel.exception.SystemException{
System.out.println(“>>>>”);
}
任何人都可以建议我如何将所选行用户ID传递给我的操作类


提前感谢。

custom\u user\u actions.jsp中获取相应的userId,并将其作为参数传递给action类

custom\u user\u actions.jsp中添加以下代码

<%
 ResultRow resultRow = (ResultRow)request.getAttribute(WebKeys.SEARCH_CONTAINER_RESULT_ROW);
 User userObj = (User)resultRow.getObject();
 %>

和pas参数,如下所示

<portlet:actionURL name="edit" var="edit">
          <portletaram name="selectedId" value="<%String.valueOf(user.getUserId())%>" />
  </portlet:actionURL>
  <liferay-ui:icon image="edit" message="Edit" url="<%=edit.toString() %>" />

将action类中的参数获取为

public void edit(ActionRequest request, ActionResponse response) throws com.liferay.portal.kernel.exception.PortalException, com.liferay.portal.kernel.exception.SystemException{

String usrID = ParamUtil.getString(request, "selectedId")
                  System.out.println("<<<< Controller add() method has been called >>>>>>>>>");

          }
public void edit(ActionRequest请求,ActionResponse响应)抛出com.liferay.portal.kernel.exception.PortalException,com.liferay.portal.kernel.exception.SystemException{
String usrID=ParamUtil.getString(请求“selectedId”)
System.out.println(“>>>>”);
}

希望它可以帮助您:)

您应该使用liferay搜索容器的rowChecker属性。参考或@PankajKathiriya上的博客,我尝试了您的建议,将rowChecker属性添加到liferay搜索容器中。现在我可以看到每行的复选框。但是我怎么能不能在action类中发送rowID edit()方法呢。你能根据我的要求再解释一下吗。非常感谢,我已经在liferay容器行参数中设置了相应的行userID。现在如何在action类中获取参数。有什么建议吗