I've only one page called
"EventListener" with this code :
{{groovy}}
import org.xwiki.observation.*
import org.xwiki.observation.event.*
import com.xpn.xwiki.web.*
import com.xpn.xwiki.*
class LoggingEventListener implements EventListener{
def xwiki
def context
LoggingEventListener(xwiki, context)
{
this.xwiki = xwiki
this.context = context
}
String getName()
{
// The unique name of this event listener
return "logging"
}
List<Event> getEvents()
{
// The list of events this listener listens to
return Arrays.asList(new DocumentSaveEvent())
}
// Called by the Observation Manager when an event matches the list of
events returned
// by getEvents()
void onEvent(Event event, Object source, Object data)
{
// Prevent infinite recursion since in this example we log to wiki
page which
// triggers a document change... :)
if (source.fullName != "Main.Logger") {
def sender = context.user.substring(6)
def emailcc = xwiki.null
def emailbcc = xwiki.null
def pageattachments = []
def emailcontent = "ceci est un test du mail"
def result = xwiki.mailsender.sendHtmlMessage("${sender}", "
stephanie.roulland(a)dcnsgroup.com"quot;, emailcc, emailbcc, "Test du mail",
emailcontent, document.getContent(), pageattachments)
def document = xwiki.getDocument("Main.Logger")
document.setContent("ça marche Sender : ${sender} / Content :
${emailcontent}")
document.save("Logging event", true)
}
}}
// Register against the Observation Manager
def observation = Utils.getComponent(ObservationManager.class)
observation.removeListener("logging")
def listener = new LoggingEventListener(xwiki, xcontext)
observation.addListener(listener)
{{/groovy}}
Have I forgotten something ?
Thanks,
Stéphanie
2012/5/29 Vincent Massol <vincent(a)massol.net>
On May 29, 2012, at 1:22 PM, Stéphanie wrote:
I'm really sorry, I don't understand all
this kind of specific words ^^
Do
you want the entire code ? Or what do you want
exactly ?
Sorry I meant Observation Manager, not Component Manager.
See
http://platform.xwiki.org/xwiki/bin/view/DevGuide/GroovyNotificationTutorial
Thanks
-Vincent
In any case, thanks for your answer,
Stéphanie
2012/5/29 vmassol [via XWiki] <ml-node+s475771n7579201h35(a)n2.nabble.com
>
> On May 29, 2012, at 1:07 PM, Stéphanie Roulland wrote:
>
>> Hello,
>>
>> Thank you for your answer, but I'm sorry, I don't understand what you
> mean
>> by CM.
>
> Component Manager.
>
> -Vincent
>
>> Thanks,
>> Stéphanie
>>
>> 2012/5/29 Vincent Massol <[hidden email]<
http://user/SendEmail.jtp?type=node&node=7579201&i=0>>
>
>>
>>> FYI I've just done this in a training I gave last week and it worked
>>> nicely.
>>>
>>> Can you show us the code you've used to register the event listener
>>> against the CM?
>>>
>>> Thanks
>>> -Vincent
>>>
>>> On May 29, 2012, at 9:12 AM, Stéphanie wrote:
>>>
>>>> Hello everyone,
>>>>
>>>> I'm trying to send an automatic email and this is the idea I have
had.
>>>>
>>>> I used the "Groovy Notification Tutorial"
>>>> (
>>>
>
http://platform.xwiki.org/xwiki/bin/view/DevGuide/GroovyNotificationTutorial
>>> )
>>>> and instead of writing in a file, I try to send an email.
>>>>
>>>> This is my code (I only copy the method onEvent, I didn't change the
>>> rest) :
>>>>
>>>> void onEvent(Event event, Object source, Object data)
>>>> {
>>>> // Prevent infinite recursion since in this example we log to
> wiki
>>>> page which
>>>> // triggers a document change... :)
>>>> if (source.fullName != "Main.Logger") {
>>>> def sender = context.user.substring(6)
>>>> def emailcc = xwiki.null
>>>> def emailbcc = xwiki.null
>>>> def pageattachments = []
>>>> def emailcontent = "Test"
>>>> def result =
>>> xwiki.mailsender.sendHtmlMessage("${sender}",
>>>> "[hidden email] <
http://user/SendEmail.jtp?type=node&node=7579201&i=1>"mp;i=1>",
> emailcc, emailbcc, "Test du mail",
emailcontent,
>>>> document.getContent(), pageattachments)
>>>> def document = xwiki.getDocument("Main.Logger")
>>>> document.setContent("Sender : ${sender} / Content :
>>>> ${emailcontent}")
>>>> document.save("Logging event", true)
>>>> }
>>>> }
>>>>
>>>> But when I try this, nothing happened. I don't have any error
message
> so
>>> I
>>>> don't know if I make something wrong.
>>>>
>>>> Do you have an idea of how doing this ?
>>>>
>>>> Thank you very much for your future answer,
>>>> Stéphanie
_______________________________________________
users mailing list
users(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/users
--
Stéphanie ROULLAND
06.74.85.37.90
-------------------------
Contrat de professionnalisation DCNS
Ingénieur domaine collaboratif
02.29.05.42.23
-------------------------
Elève ingénieur ENIB
3ème année cycle ingénieur
Option informatique