2017-06-21 1 views
0

Ich arbeite an einem Liferay 6.2-Projekt und ich muss das Liferay-Kalender-Portlet haken. Im normalen Modus sendet der Liferay-Kalender eine E-Mail-Benachrichtigung an den Ersteller eines Ereignisses. Ich möchte eine E-Mail für jedes Mitglied einer Gruppe senden. Senden Sie eine Benachrichtigungs-E-Mail an jedes Mitglied.Liferay Kalender, wie man E-Mails an alle Mitglieder einer Gruppen-ID sendet

Ich habe den Kalender mit dem folgenden Pfad Hook: /home/[...]/plugins/hooks/calendar-hook/docroot/custom-jsp/html/portlet/calendar/view.jsp (I haben andere jsp Dateien wie days.jsp)

ich weiß, dass ich die liferay Java-Klasse CalEventLocalServiceImp außer Kraft zu setzen und einen neuen Funktion remindUser (CalEvent Ereignis, Benutzer-Benutzer, Kalender startdate)

mit, zum Beispiel, die definieren folgende Zeile:

protected void remindUser(CalEvent event, [...], Calendar startDate) { 
[...] 
    List<User> users = GroupUtil.getUsers(event.getGroupId()); 
    for(User user : users){ 
     [...] 
     List<User> users = GroupUtil.getUsers(event.getGroupId()); 
     remindUser(event,user,startDate); 
     [...] 
    } 
[...] 
} 

Mein Problem ist, ich weiß nicht, wo der Code diese Funktion aufrufen und wo ich sie überschreiben soll. Ich sehe die Verbindung zwischen der Jsp und meiner Java-Override-Klasse nicht.

Antwort

2

Soweit ich sehen kann, ist Liferay 6.2 Kalender in einem Plugin enthalten, nicht im Kern. Dies bedeutet, dass Sie es nicht mit einem Haken außer Kraft setzen können, sondern dass Sie entlang der Linien eines plugin extending another plugin arbeiten müssen. Das bedeutet, dass Sie eine modifizierte Version dieses Plugins aktualisieren müssen

+0

Also muss ich keine benutzerdefinierte Klasse erstellen, die einen Wrapper erweitert und es in der "liferay-hook.xml" deklariert für signalisierte es wird ersetzt werden Bedienung ? – Fred37b

+0

Nach einer Überprüfung bin ich auf liferay 6.1.1; nicht in 6.2 – Fred37b

+0

Bitte entscheiden. Sie öffnen Ihre Frage mit "Ich arbeite an einem Liferay 6.2-Projekt". Wenn Sie tatsächlich unter 6.1.1: Upgrade sind. Es ist lange außer Betrieb und erhält seit 2013 keine Updates, Sicherheit oder Stabilität –

Verwandte Themen