简单的 Liferay ProcessAction 不工作
Simple Liferay ProcessAction not working
小门户 Class
public class AddRoomController extends MVCPortlet {
public void doView(RenderRequest renderRequest, RenderResponse renderResponse)
throws IOException, PortletException {
System.out.println("hu to call thau chu...");
super.doView(renderRequest, renderResponse);
}
// @ProcessAction(name="addRooms") //Adding this annotation also not solving the issue
public void addRooms(ActionRequest actionRequest, ActionResponse actionResponse)
throws IOException, PortletException {
System.out.println("Called");
String locationName = actionRequest.getAttribute("locationName").toString();
System.out.println("===> "+locationName);
actionResponse.sendRedirect("addRooms.jsp");
}
}
view.jsp
片段 1
<body>
<portlet:actionURL name="addRooms" var="addRoomsUrl"></portlet:actionURL>
<form action="${addRoomsUrl}" method="post">
<!-- Custom Inputs -->
</form>
</body>
片段 2
<body>
<portlet:actionURL name="addRooms" var="addRoomsUrl"></portlet:actionURL>
<form action="<%=addRoomsUrl%>" method="post">
<!-- Custom Inputs -->
</form>
</body>
我正在尝试使用以上两个代码片段调用操作方法,但其中 none 有效。
在我的 Portlet 中调用了 doView(),但是当我尝试调用 processAction 方法名称 addRooms 时,它给出了空值错误。 我想尽可能避免使用 alloy-ui。
如有任何帮助,我们将不胜感激...
使用这些解决了错误:
- 使用 actionRequest.getParameter(paramName)
- 在表单参数名称中定义 Portlet 命名空间
小门户 Class
public class AddRoomController extends MVCPortlet {
public void doView(RenderRequest renderRequest, RenderResponse renderResponse)
throws IOException, PortletException {
System.out.println("hu to call thau chu...");
super.doView(renderRequest, renderResponse);
}
// @ProcessAction(name="addRooms") //Adding this annotation also not solving the issue
public void addRooms(ActionRequest actionRequest, ActionResponse actionResponse)
throws IOException, PortletException {
System.out.println("Called");
String locationName = actionRequest.getAttribute("locationName").toString();
System.out.println("===> "+locationName);
actionResponse.sendRedirect("addRooms.jsp");
}
}
view.jsp
片段 1
<body>
<portlet:actionURL name="addRooms" var="addRoomsUrl"></portlet:actionURL>
<form action="${addRoomsUrl}" method="post">
<!-- Custom Inputs -->
</form>
</body>
片段 2
<body>
<portlet:actionURL name="addRooms" var="addRoomsUrl"></portlet:actionURL>
<form action="<%=addRoomsUrl%>" method="post">
<!-- Custom Inputs -->
</form>
</body>
我正在尝试使用以上两个代码片段调用操作方法,但其中 none 有效。
在我的 Portlet 中调用了 doView(),但是当我尝试调用 processAction 方法名称 addRooms 时,它给出了空值错误。 我想尽可能避免使用 alloy-ui。
如有任何帮助,我们将不胜感激...
使用这些解决了错误:
- 使用 actionRequest.getParameter(paramName)
- 在表单参数名称中定义 Portlet 命名空间