我有一个要求,当我点击超链接时,我会发送一个参数课程id,它必须转到portlet类中的操作方法。然后我需要在浏览器上显示操作完成后的成功和失败消息!
public void DeleteCourses(ActionRequest request,ActionResponse response) throws IOException,PortletException
{
String cid=request.getParameter("courseId");
long courseId = Long.parseLong(cid);
try {
CourseLocalServiceUtil.deleteCourse(courseId);
}
catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
有人能告诉我如何为超链接创建动作url吗?
您可以在JSP上这样写:
<portlet:actionURL name="DeleteCourses" var="DeleteCoursesURL">
<portlet:param name="courseId" value="the_course_id"></portlet:param>
</portlet:actionURL>
<a href="${DeleteCoursesURL}"> Delete Course </a>
由于portlet类继承自MVCPortlet
,所以方法DeleteCourses
的名称应该和actionURL
的名称相同
你可以在这里查看完整的例子
对于成功和错误消息,你可以简单地使用liferay内置功能:
<liferay-ui:success key="success" message="Course deleted successfully!" />
对于错误:
<liferay-ui:error key="error" message="Course could not be deleted" />
你可以在这里查看一个例子