我有一个要求,当我点击超链接时,我将发送一个参数课程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();
}
}
任何人都可以告诉我如何为超链接创建动作网址吗?
答案 0 :(得分:1)
您可以在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
您可以查看完整示例here
对于成功和错误消息,您可以简单地使用liferay内置功能:
<liferay-ui:success key="success" message="Course deleted successfully!" />
对于错误:
<liferay-ui:error key="error" message="Course could not be deleted" />
您可以查看示例here