Re: Get user information during a listener execution

David Cortabarra Romero via opencms-dev <[email protected]> Fri, 25 Oct 2024 07:49:25 +0000
Newsgroups gmane.comp.cms.opencms.devel
Message-ID <DBAPR05MB7303ADAC065969E4499A2F77E04F2@DBAPR05MB7303.eurprd05.prod.outlook.com>
Hello, thank you for your reply,

I have tried this solution before, however, when I do something like importing a module, the information I get about the user does not correspond to the one who is importing the module. The information I get is about the person who first created the resource and who last modified it. This is not the behaviour I want, as I want to know information about who interacts with the system.

Thanks, best regards,

David Cortabarra

De: DAVID RODRIGUEZ MERINO <[email protected]>
Enviado el: viernes, 25 de octubre de 2024 9:09
Para: The OpenCms mailing list <[email protected]>
CC: David Cortabarra Romero <[email protected]>
Asunto: Re: [opencms-dev] Get user information during a listener execution

HI,

If you got the cmsobject and the resource path, you can use readResource to get CmsResource object (https://documentation.opencms.org/javadoc/core/org/opencms/file/CmsObject.html#readResource(java.lang.String)) and then get the user id with CmsResouce.getUserLastModified (https://documentation.opencms.org/javadoc/core/org/opencms/file/CmsResource.html#getUserLastModified())

To manage the session, you can use CmsSessionManager and get user sessions (https://documentation.opencms.org/javadoc/core/org/opencms/main/CmsSessionManager.html#getSessionInfos(org.opencms.util.CmsUUID)). You get some info (https://documentation.opencms.org/javadoc/core/org/opencms/main/CmsSessionInfo.html)

Salu2!!



--

David Rodríguez Merino
Área Web del Gabinete de Comunicación
Vicerrectorado de Comunicación
Universidad de Valladolid

Edificio Rector Tejerina
Plaza de Santa Cruz nº 6
47002 Valladolid

Email: [email protected]<mailto:[email protected]>
Email grupo: [email protected]<mailto:[email protected]>


De: opencms-dev <[email protected]<mailto:[email protected]>> en nombre de David Cortabarra Romero via opencms-dev <[email protected]<mailto:[email protected]>>
Fecha: viernes, 25 de octubre de 2024, 8:28
Para: [email protected]<mailto:[email protected]> <[email protected]<mailto:[email protected]>>
CC: David Cortabarra Romero <[email protected]<mailto:[email protected]>>
Asunto: [opencms-dev] Get user information during a listener execution
Hello,

I am working using OpenCms version 16.0. Trying to create a listener that acts when a modification or content creation event occurs, I need to get the user that performed the action.

I do not find this information available at any time during the listener execution because I only have access to the CmsObject and the resource I am acting on.

Inside the CmsObject I can get the context of the request, but the information of the user who has performed the action does not appear there, only the information of the user used to initialise the listener.

On the other hand, I have no way to obtain the session of the specific user who performed the action. I can get the session of all the users that are inside the system, but I have no way of knowing which one is related to the user that has performed the action. Finally, I also don't have access to the request made, where I could also get the information.

I would like to know if there is any way to get the information of the user who has performed the action during the execution of the listener.

Thanks,

Sincerely yours,

David Cortabarra

_______________________________________________
This mail is sent to you from the opencms-dev mailing list
To change your list options, or to unsubscribe from the list, please visit
https://lists.opencms.org/mailman/listinfo/opencms-dev