• Notificación

  • Hemos intentado hacer de OpenKM una aplicación lo más intuitiva posible, sin embargo siempre viene bien algún consejo.
Hemos intentado hacer de OpenKM una aplicación lo más intuitiva posible, sin embargo siempre viene bien algún consejo.
Forum rules: Por favor, antes de preguntar algo consulta el wiki de documentación o utiliza la función de búsqueda del foro. Recuerda que no tenemos una bola de cristal ni poderes mentales, o sea que que para informar sobre un error es necesario que nos indiques tanto la versión de OpenKM que usas como la del navegador y sistema operativo. Para más información consulta Cómo informar de fallos de forma efectiva.
 #31648  by gcosta
 
Buenas tardes, tengo un problema cuando por ejemplo subo un documento y selecciono la opción notificar a un usuario no envia el correo.

Seleccionamos opción notificar usuario y seleccionamos usuario existente en la base de datos.

A continuación os adjunto lo que aparece en el log de catalina.log
Code: Select all
Expression documentName is undefined on line 1, column 27 in NotificationMessage
Subject.
The problematic instruction:
----------
==> ${documentName} [on line 1, column 25 in NotificationMessageSubject]
----------

Java backtrace for programmers:
----------
freemarker.core.InvalidReferenceException: Expression documentName is undefined
on line 1, column 27 in NotificationMessageSubject.
        at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)
        at freemarker.core.Expression.getStringValue(Expression.java:118)
        at freemarker.core.Expression.getStringValue(Expression.java:93)
        at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
        at freemarker.core.Environment.visit(Environment.java:210)
        at freemarker.core.MixedContent.accept(MixedContent.java:92)
        at freemarker.core.Environment.visit(Environment.java:210)
        at freemarker.core.Environment.process(Environment.java:190)
        at freemarker.template.Template.process(Template.java:237)
        at com.openkm.module.common.CommonNotificationModule.sendNotification(CommonNotificationModule.java:110)
 #31669  by jllort
 
Tienes un problema con el valors que has puesto en el parametro de configuración subscription.body ( probablemente ).
Indica la versión de openkm que estas utilizando y el valor de los parámetros subscription.* ( en administración / parametros de configuración )
 #31966  by gcosta
 
Buenas tardes, estoy utilizando la versión Community 6.3.0

En el parámetro suscription.body tengo:
Code: Select all
<b>Document: </b><a href="${documentUrl}">${documentPath}</a><br/><b>User: </b>${userId}<br/><b>Event: </b>${eventType}<br/><b>Comment: </b>${subscriptionComment}<br/>
 #36701  by pavila
 
No veo que tengas "{documentName}" ahí.
 #36702  by gcosta
 
Buenas tardes esa es la configuración que viene por defecto no la he modificado.

Como tendría que ser?

Gracias.
 #36840  by gcosta
 
Buenas tardes, he encontrado el error. Haber si alguien puede ayudarme ha encontrar la solución.

El problema viene tal y como se puede ver en las lineas del log que adjunte en el primer mensaje por que no conoce las variables.

Por ejemplo ${documentPath}, ... He quitado esas variables en los campos notification de los ajustes y envia perfectamente la notificación, evidentemente sin esos parametros.

Como puedo solucionar eso? La versión que estoy usando es la Community 6.3.0.

Gracias.

P.D. vuelvo adjuntar el log a continuación.
Code: Select all
Expression documentName is undefined on line 1, column 27 in NotificationMessage
Subject.
The problematic instruction:
----------
==> ${documentName} [on line 1, column 25 in NotificationMessageSubject]
----------

Java backtrace for programmers:
----------
freemarker.core.InvalidReferenceException: Expression documentName is undefined
on line 1, column 27 in NotificationMessageSubject.
        at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)
        at freemarker.core.Expression.getStringValue(Expression.java:118)
        at freemarker.core.Expression.getStringValue(Expression.java:93)
        at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
        at freemarker.core.Environment.visit(Environment.java:210)
        at freemarker.core.MixedContent.accept(MixedContent.java:92)
        at freemarker.core.Environment.visit(Environment.java:210)
        at freemarker.core.Environment.process(Environment.java:190)
        at freemarker.template.Template.process(Template.java:237)
        at com.openkm.module.common.CommonNotificationModule.sendNotification(CommonNotificationModule.java:110)
 #37381  by jllort
 
Esto es porque entre la version 6.X y la 6.3 ha habido algun cambio en los nombres de las variables.
1- Lo más fácil es exportar la configuración ( arriba a la derecha tienes una opción que te debe permitir exportar la configuración en un sql ).
2- Elimina los parametros xxx.subject xxx.body
3- Reinicia la aplicación ( te pondrá los parametros por defecto ahora admitidos ).

Estamos trabajando en una documentación totalmente nueva. La wiki tal y como la conocemos tiene los días contados. Esto obviamente no es algo que se hace de un día para otro, ya llevamos un mes inmersos en documentarlo todo de nuevo y aun nos falta. Una previsión optimista es que lo tengamos para mayo ( almenos parte, o que vayamos liberando parte, esto aun no lo hemos decidido porque no hemos llegado a algo que sea liberable ).
 #37417  by gcosta
 
Buenos días, gracias jllort siguiendo los pasos ya funciona perfectamente.

Solo me queda una duda, podrías hacerme llegar los parametros que usa la versión Community 6.3.0 para poder personalizarme las notificaciones?

Gracias.
 #37452  by pavila
 
Los parámetros son:
  • subscriptionComment
  • documentUrl
  • documentPath
  • eventType
  • userId

About Us

OpenKM is part of the management software. A management software is a program that facilitates the accomplishment of administrative tasks. OpenKM is a document management system that allows you to manage business content and workflow in a more efficient way. Document managers guarantee data protection by establishing information security for business content.