Buenos dias,
Necesito enviar una notificacion desde el record management pero no esta colocando los valores cuando se da guardar al mensaje que se quiere enviar. En el Log me sale este error
2017-03-31 12:00:02,070 ERROR [org.quartz.core.ErrorLogger] [DefaultScheduler_Worker-7] Job (DEFAULT.scheduledNotifyOfRecordsDueForReviewJobDetail threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception. [See nested exception: org.alfresco.error.AlfrescoRuntimeException: 02310713 Unable to send record due for review email notification, because notification group was empty.]
at org.quartz.core.JobRunShell.run(JobRunShell.java:227)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:563)
Caused by: org.alfresco.error.AlfrescoRuntimeException: 02310713 Unable to send record due for review email notification, because notification group was empty.
at org.alfresco.module.org_alfresco_module_rm.notification.RecordsManagementNotificationHelper.recordsDueForReviewEmailNotification(RecordsManagementNotificationHelper.java:274)
at org.alfresco.module.org_alfresco_module_rm.job.NotifyOfRecordsDueForReviewJobExecuter$1$1.execute(NotifyOfRecordsDueForReviewJobExecuter.java:121)
at org.alfresco.module.org_alfresco_module_rm.job.NotifyOfRecordsDueForReviewJobExecuter$1$1.execute(NotifyOfRecordsDueForReviewJobExecuter.java:116)
at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:464)
at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:333)
at org.alfresco.module.org_alfresco_module_rm.job.NotifyOfRecordsDueForReviewJobExecuter$1.doWork(NotifyOfRecordsDueForReviewJobExecuter.java:145)
at org.alfresco.repo.security.authentication.AuthenticationUtil.runAs(AuthenticationUtil.java:555)
at org.alfresco.module.org_alfresco_module_rm.job.NotifyOfRecordsDueForReviewJobExecuter.executeImpl(NotifyOfRecordsDueForReviewJobExecuter.java:87)
at org.alfresco.module.org_alfresco_module_rm.job.RecordsManagementJobExecuter$1.execute(RecordsManagementJobExecuter.java:77)
at org.alfresco.module.org_alfresco_module_rm.job.RecordsManagementJobExecuter$1.execute(RecordsManagementJobExecuter.java:73)
at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:464)
at org.alfresco.module.org_alfresco_module_rm.job.RecordsManagementJobExecuter.execute(RecordsManagementJobExecuter.java:72)
at org.alfresco.module.org_alfresco_module_rm.job.RecordsManagementJob$1.doWork(RecordsManagementJob.java:143)
at org.alfresco.module.org_alfresco_module_rm.job.RecordsManagementJob$1.doWork(RecordsManagementJob.java:132)
at org.alfresco.repo.security.authentication.AuthenticationUtil.runAs(AuthenticationUtil.java:555)
at org.alfresco.module.org_alfresco_module_rm.job.RecordsManagementJob.execute(RecordsManagementJob.java:131)
at org.quartz.core.JobRunShell.run(JobRunShell.java:216)
... 1 more
Muchas gracias
Buenas.
Si echamos un vistazo a la clase RecordsManagementNotificationHelper.java:
....
/**
* Sends records due for review email notification.
*
* @param records records due for review
*/
public void recordsDueForReviewEmailNotification(final List<NodeRef> records)
{
ParameterCheck.mandatory("records", records);
if (!records.isEmpty())
{
NodeRef root = getRMRoot(records.get(0));
String groupName = getGroupName(root);
if (doesGroupContainUsers(groupName))
{
NotificationContext notificationContext = new NotificationContext();
notificationContext.setSubject(I18NUtil.getMessage(MSG_SUBJECT_RECORDS_DUE_FOR_REVIEW));
notificationContext.setAsyncNotification(false);
notificationContext.setIgnoreNotificationFailure(true);
notificationContext.setBodyTemplate(getDueForReviewTemplate().toString());
Map<String, Serializable> args = new HashMap<String, Serializable>(1, 1.0f);
args.put("records", (Serializable)records);
args.put("site", getSiteName(root));
notificationContext.setTemplateArgs(args);
notificationContext.addTo(groupName);
notificationService.sendNotification(EMailNotificationProvider.NAME, notificationContext);
}
else
{
if (logger.isWarnEnabled())
{
logger.warn("Unable to send record due for review email notification, because notification group was empty.");
}
throw new AlfrescoRuntimeException("Unable to send record due for review email notification, because notification group was empty.");
}
} }
....
El error está relacionado con el grupo al que estás enviando esas notificaciones: Una pregunta muy tonta pero que quizás tengas que comprobar ¿Tienes usuarios en el grupo del record management? Más información aquí: Users and groups | Alfresco Documentation
Coméntanos y vemos si podemos echarte una mano.
Un saludo,
Cristina.
Hola Cristina, si tengo usuarios, el error que dice que no encuentra los usuarios/grupos es debido a que no guarda el mensaje. Cuando se ingresa a observar el mensaje aparece como si no se hubiera guardado nada. Tampoco esta dejando colocar un script.
Gracias Cristina. Otra cosita... me podrias decir en que carpeta esta esa clase java que colocaste.
Debería estar en un jar (porque es una clase compilada), es que he mirado el código fuente de Alfresco directamente:
rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/notification/RecordsManagementNotificationHelper.java
Aquí el enlace.
¿Ningún otro error relacionado en los logs?
Hola Cristina aun sigue poniendo problemas, te adjunto los errores que están apareciendo.
Por casualidad, tu que versión de alfresco community y Record Management utilizas
Buenas.
Parece que has topado con un issue en el jira de Alfresco pero pone que no está resuelto :-(
Lo siento pero no uso RM. Simplemente estoy intentando ayudar (en la medida de mis capacidades :-P).
Un saludo,
Cris.
Discussions about Alfresco Content Services and Alfresco Process Services in Spanish
Related:
By using this site, you are agreeing to allow us to collect and use cookies as outlined in Alfresco’s Cookie Statement and Terms of Use (and you have a legitimate interest in Alfresco and our products, authorizing us to contact you in such methods). If you are not ok with these terms, please do not use this website.