Uploaded image for project: 'Magnolia UI'
  1. Magnolia UI
  2. MGNLUI-3532

LocalTaskDispatcher fires event always under user that causes the event

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Obsolete
    • Icon: Neutral Neutral
    • None
    • None
    • None
    • None

      The LocalTaskDispatcher has the user as property that should receive the task.

      The dispatcher then fires an event on the eventbus and sets a new context with the correct user and locale, but only if there was no instance in MgnlContext (=if MgnlContext.hasInstance() returns false).

      This is not the case, however. MgnlContext.hasInstance() will return true and therefore the context is not changed. The TaskEvent therefore will be executed in the context of the user, that has sent the event, not the user that should receive it.

      E.g. this leads to problems with the ExternalUserManager. This manager is only capable of returning the current logged in user. If this userManager is access later while this TaskEvent is processed, it will return null, when the current user is accessed.

        Acceptance criteria

              Unassigned Unassigned
              ademasi Adi De Masi
              Votes:
              1 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Bug DoR
                  Task DoD