Uploaded image for project: 'Sakai'
  1. Sakai
  2. SAK-33341

Assignment creation fails to create bullhorn alert

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Verified
    • Priority: Blocker
    • Resolution: Duplicate
    • Affects Version/s: 12.0
    • Fix Version/s: None
    • Labels:
      None
    • Test Plan:
      Hide

      Please add a Test Plan here.

      Show
      Please add a Test Plan here.

      Description

      Assignment creation fails to create bullhorn alert. Since the assignment refactor and the move to the use of @Transactional around assignment methods, the bullhorns service fails to retrieve newly created assignments. This is down to the fact that the assignment hasn't been committed when the event is fired. This can be fixed by wrapping the event firing with a TransactionSynchronizationManager. There are also other issues with security - bullhorns now can't retrieve the assignment, even with the sync fix in place. There is a permissions error:

      org.sakaiproject.exception.PermissionException: user=null lock=asn.read resource=f723e542-0ed7-4fc1-9e20-995d8fd7095a id: f723e542-0ed7-4fc1-9e20-995d8fd7095a
          at org.sakaiproject.assignment.impl.AssignmentServiceImpl.checkAssignmentAccessibleForUser(AssignmentServiceImpl.java:2288)
          at org.sakaiproject.assignment.impl.AssignmentServiceImpl.getAssignment(AssignmentServiceImpl.java:904)
          at org.sakaiproject.assignment.impl.AssignmentServiceImpl.getDeepLinkWithPermissions(AssignmentServiceImpl.java:1940)
          at org.sakaiproject.assignment.impl.AssignmentServiceImpl.getDeepLink(AssignmentServiceImpl.java:1989)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          at java.lang.reflect.Method.invoke(Method.java:497)
          at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
          at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
          at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
          at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
          at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:282)
          at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
          at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
          at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
          at com.sun.proxy.$Proxy104.getDeepLink(Unknown Source)
          at org.sakaiproject.portal.service.BullhornServiceImpl.lambda$update$1(BullhornServiceImpl.java:303)
          at org.sakaiproject.portal.service.BullhornServiceImpl$$Lambda$74/14041562.run(Unknown Source)
          at java.lang.Thread.run(Thread.java:745)

        Gliffy Diagrams

          Zeplin

            Attachments

              Activity

                People

                • Assignee:
                  agschmidt Andrea Schmidt
                  Reporter:
                  a.fish@lancaster.ac.uk Adrian Fish
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  3 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:

                    Git Integration