如何在liferay中覆盖日历portlet?

时间:2015-06-25 10:15:02

标签: java liferay portlet

我正在使用liferay 6.1 CE,我想在日历portlet中覆盖事件的remiderUser方法。 我试图找到,但我找到了覆盖CalEventLocalService的方法,但我找不到将eventReminder发送给用户的任何方法。

我已经浏览了以下链接。

https://dev.liferay.com/develop/tutorials/-/knowledge_base/6-2/overriding-a-portal-service-using-a-hook https://www.liferay.com/community/forums/-/message_boards/message/29120467 https://www.liferay.com/community/forums/-/message_boards/message/29120467

更新

在我创建的课程之后,我正在尝试覆盖checkEvents方法

public class MyCalEventServiceImple extends CalEventLocalServiceWrapper {

    public MyCalEventServiceImple(CalEventLocalService calEventLocalService) {
        super(calEventLocalService);
        // TODO Auto-generated constructor stub
    }


    public CalEvent addEvent(
            long userId, String title, String description, String location,
            int startDateMonth, int startDateDay, int startDateYear,
            int startDateHour, int startDateMinute, int endDateMonth,
            int endDateDay, int endDateYear, int durationHour,
            int durationMinute, boolean allDay, boolean timeZoneSensitive,
            String type, boolean repeating, TZSRecurrence recurrence,
            int remindBy, int firstReminder, int secondReminder,
            ServiceContext serviceContext)
        throws PortalException, SystemException {

        // Event
            System.out.println("*****************CALLED Success.....**********");


        return null;
    }


}

但没有找到任何方法来实现这一点。

任何人都可以提供帮助??

提前致谢。

1 个答案:

答案 0 :(得分:3)

如果查看liferay源代码remindUser(受保护)是向用户发送有关事件的提醒的方法。如果您深入了解liferay源代码,您会发现checkEvents(公共)是最终调用remindUser方法的方法。所以,我认为您可以使用checkEvents方法来满足您的要求。

编辑:您可以使用服务包装器挂钩来覆盖liferay服务类。 Service Wrapper Hook

liferay source