[TECHNICAL SUPPORT] LPS-32302

Hi Tamás,

While I was trying to fix LPS-32187, I stumbled upon some regression bugs in Private Messaging Portlet. In order to be able to fix the original XSS issue, I had to deal with them first.

Logic change introduced by SOS-1113 (039207662a08805321d8b223cb045953f4a03632) prevents the Private Messaging Portlet (PMP) from sending a notification to the recipient of the private message.

In UserThreadLocalServiceImpl method getPrivateMessageURL() throws NoSuchLayoutException, if the recipient user doesn't have a PMP added to his/her private page; on the sender side however there is no error message displayed and there isn't anything helpful in the logs either.

---

My fix normalizes exception handling in UserThreadLocalServiceImpl and changes to the view/controller layer ensures the captured errors in PrivateMessagePortlet be handled in a reasonable way (either log and/or display a meaningful message to the end user).

Thanks for reviewing.

Cheers,
Laci.