Details
-
Bug
-
Resolution: Fixed
-
Medium
-
3.3.3
-
None
-
None
Description
When user have some notifications set up the Bamboo will throw following exception when trying to view "http://localhost:8085/bamboo/profile/userNotifications.action":
java.lang.ClassCastException: com.atlassian.bamboo.plan.PlanKey cannot be cast to java.lang.Comparable at org.apache.commons.lang.builder.CompareToBuilder.append(CompareToBuilder.java:483) at org.apache.commons.lang.builder.CompareToBuilder.append(CompareToBuilder.java:412) at com.atlassian.bamboo.plan.AbstractPlan.compareTo(AbstractPlan.java:408) at com.atlassian.bamboo.plan.AbstractPlan.compareTo(AbstractPlan.java:34) at org.apache.commons.lang.builder.CompareToBuilder.append(CompareToBuilder.java:483) at org.apache.commons.lang.builder.CompareToBuilder.append(CompareToBuilder.java:412) at com.atlassian.bamboo.notification.UsersNotificationImpl.compareTo(UsersNotificationImpl.java:47) at java.util.Arrays.mergeSort(Arrays.java:1144) at java.util.Arrays.mergeSort(Arrays.java:1155) at java.util.Arrays.mergeSort(Arrays.java:1155) at java.util.Arrays.mergeSort(Arrays.java:1155) at java.util.Arrays.sort(Arrays.java:1079) at java.util.Collections.sort(Collections.java:117) at com.atlassian.bamboo.notification.NotificationManagerImpl.getNotificationRulesForUser(NotificationManagerImpl.java:285) at sun.reflect.GeneratedMethodAccessor866.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor blabla
Thing is that PlanKey doesn't implement Comparable interface, and it should, as it is called from Plan.compareTo(Plan o).