Notification for deleted document

Hi, I'm a new user of Nuxeo. I'm wondering if it is possible to have notifications when a document is deleted. I write my extension point:

<component name="org.nuxeo.sample.notify">
    <extension point="notifications" target="">
        <notification autoSubscribed="false" availableIn="all" label="Delete" channel="email" enabled="true" name="Document Removed">
        <event name="documentRemoved" />

I can subscribe an user to receive the Delete notifications, but they don't work: when I delete a document, user does not receive the notification.

What's wrong?

Thank you very much, and sorry for my bad English!


0 votes

10 answers



Is it normal that you have spaces in your target?

target=&quot; ervice &quot;

I think that is a problem of formattation in the previous message…in orginal code there were not those spaces!

There is no simply way to do that.

A solution would be to implement your own event 'documentDeleted' and to create a listener or by overriding the concerned bean to fired this event. See

0 votes

Testing the notification service for deleted files, I noticed that when a document has got more than one version, nuxeo send me a mail for each version when I delete the entire document… is there a way to filter to notifications?

0 votes

You can use the method isVersion() of a DocumentModel in your listener to filter.

Please ask new questions as a separate Question in this site. Or add comments. But don't ask questions in the Answers of an existing question.

Well, thanks in any case, but I found a cleaner solution…I write it here, so, if someone will be interested… It is possible to disable the trash service, adding the following extension:

<extension point="config" target="org.nuxeo.ecm.webapp.trashManagement.TrashManagementService">
    <trashConfig enabled="false"/>
0 votes

Sorry, another question: if I move the “Permanently delete” button from the trash to the workspace with this piece of code:

<action confirm="if( !confirmDeleteDocumentsForever() ) return false;" help="" icon="" id="CURRENT_SELECTION_DELETE" label="command.deleteDocs" link="#deleteActions.purgeSelection}">
  <filter id="canPurge">
    <rule grant="true">

I have the button, but it does not delete the document. Is there a way to fix it?

0 votes

Thanks, I will try to create a listener. Instead, is there an event associated to the moving of a document in the trash? I tried with “aboutToRemove”, but it does not seem to work…and “lifecycle_transition_event” catch other events too (for example: restoring).

0 votes

There is no event when a document is moved to the trash, but you should catch the event 'lifecycle_transition_event' and test if the currentLifeCycleState of the document is 'delete', then you can fired your own event 'documentDeleted'.

Can I filter the notifications? Something like:

<notification name="Cancellazione" channel="email" availableIn="all" autoSubscribed="false" label="Cancellazione" template="remove" enabled="true"> <event name="lifecycle_transition_event"/> <filter id="del"> <rule grant="false">


</rule> </filter> </notification>


Ok, thanks, now all has got sense! Could I bind the “documentRemoved” event to the “Delete” button?

0 votes

This is my new piece of code: this works with every event, except for documentRemoved and documentMoved…can anyone tell me why?

<extension target="" point="templates">
        <template name="remove" src="templates/documentRemoved.ftl" />
    <extension target="" point="notifications">

        <notification name="Cancellazione" channel="email" availableIn="all" autoSubscribed="false"
          label="Cancellazione" template="remove">
          <event name="documentRemoved"/>
0 votes

The event 'documentRemoved' is throwed when a document is permanently removed form the trash. What is your test case ?

Where is the trash? I would like to send a notification when I selected a document from a folder and press the button "Delete"…in this way, isn't a document removed?

The trash is a sub-tab of the administration tab. When you press the button 'Delete' the 'documentRemoved' event is not fired, this is why the notification is not sended.

The curious thing is that the code works with every other defined event (for example: documentModified or documentLocked or versionRemoved)… it doesn't work only with documentRemoved and I really don't understand why… (I try to add my own template…it works with other event too)

0 votes

Can you (by convention) use a name without space (this is the technical name, so my advice would be to use the Camel Case.

Have you defined your component into the Manifest ?

How did you generate your bundle. My piece of advice would be to use the Nuxeo IDE.

Or more easily you can use studio and copy you contribution (from <extension... to </extension>) into Advanced setting > XML Extension.


0 votes

You need to precise a template for your notification :

<notification template="documentRemoved" autoSubscribed="false" availableIn="all" label="Delete" channel="email" enabled="true" name="Document Removed">
    <event name="documentRemoved" />

Moreover the template must be defined in an other contribution point :

  <extension target=""
    <template name="documentRemoved" src="templates/documentRemoved.ftl" />

You can see the template 'modif.ftl' to create your own template 'documentRemoved.ftl'.

I think it should work better!

0 votes