LPS-45935 Since getPortletPreferences method might create a preference object, use that to set the xml to and update the entity. The other updatePortletPreferences was doing essentially a similar operation.
LPS-45935 According to Shuyang the TransactionalCallbackAwareETL is something we shouldn't use, plus in this case the transactional stuff is causing StaleObjectStateExceptions. Since the groups are properly cleared in the tearDown removing @Transactional