Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

Configurable sorting

On the beta page there is mention of "configurable sorting" about half way down:
Work items on a plan can now be sorted by any work item attribute of type string, HTML-string, boolean, integer, float, date, duration, or enumeration.
All you need to do is to define a sort mode in the process specification, using the generic sorter implementation:

Was this support removed, or am I missing something? I tried this with 2.0.0.2 and after I configure, and select that sorting option in the plan view, I receive the following error:
com.ibm.team.apt.internal.common.scripting.ScriptException
at com.ibm.team.apt.internal.common.scripting.impl.ScriptTypeFunction.call(ScriptTypeFunction.java:69)
at org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:66)
at org.mozilla.javascript.gen.c68._c4(GenericPlanItemSorter.js:51)
at org.mozilla.javascript.gen.c68.call(GenericPlanItemSorter.js)
at org.mozilla.javascript.optimizer.OptRuntime.callN(OptRuntime.java:86)
at org.mozilla.javascript.gen.c67._c9(EntrySorter.js:59)
at org.mozilla.javascript.gen.c67.call(EntrySorter.js)
at org.mozilla.javascript.NativeArray.isBigger(NativeArray.java:745)
at org.mozilla.javascript.NativeArray.heapify(NativeArray.java:804)
at org.mozilla.javascript.NativeArray.heapsort(NativeArray.java:773)
at org.mozilla.javascript.NativeArray.js_sort(NativeArray.java:702)
at org.mozilla.javascript.NativeArray.execIdCall(NativeArray.java:215)
at org.mozilla.javascript.IdFunctionObject.call(IdFunctionObject.java:127)
at org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:66)
at org.mozilla.javascript.gen.c67._c8(EntrySorter.js:54)
at org.mozilla.javascript.gen.c67.call(EntrySorter.js)
at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:393)
at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:2834)
at org.mozilla.javascript.gen.c67.call(EntrySorter.js)
at org.mozilla.javascript.ScriptableObject.callMethod(ScriptableObject.java:1831)
at com.ibm.team.apt.internal.common.scripting.util.JSUtils.callMethod(JSUtils.java:89)
at com.ibm.team.apt.internal.ide.ui.scripting.interfaces.ScriptableSorter$5.run(ScriptableSorter.java:95)
at com.ibm.team.apt.internal.ide.ui.scripting.interfaces.ScriptableSorter$5.run(ScriptableSorter.java:1)
at com.ibm.team.apt.internal.common.scripting.environment.AbstractScriptEnvironment.execute(AbstractScriptEnvironment.java:62)
at com.ibm.team.apt.internal.ide.ui.scripting.interfaces.ScriptableSorter.sort(ScriptableSorter.java:92)
at com.ibm.team.apt.internal.ide.ui.common.model.OutlineEntry.doPendingSort(OutlineEntry.java:374)
at com.ibm.team.apt.internal.ide.ui.common.model.OutlineModel.executePendingSortRequests(OutlineModel.java:703)
at com.ibm.team.apt.internal.ide.ui.common.model.OutlineModel.executePendingSortRequests(OutlineModel.java:700)
at com.ibm.team.apt.internal.ide.ui.common.model.OutlineModel.doEndUpdate(OutlineModel.java:593)
at com.ibm.team.apt.internal.ide.ui.common.model.OutlineModel.updateModel(OutlineModel.java:380)
at com.ibm.team.apt.internal.ide.ui.editor.OutlinePage$12$4$1.doRun(OutlinePage.java:1691)
at com.ibm.team.apt.internal.ide.ui.editor.OutlinePage$ViewModelSafeRunnable.run(OutlinePage.java:2437)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at com.ibm.team.apt.internal.ide.ui.editor.OutlinePage$12$4.run(OutlinePage.java:1688)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at com.ibm.team.apt.internal.ide.ui.editor.OutlinePage$12.settingChanged(OutlinePage.java:1686)
at com.ibm.team.apt.internal.ide.ui.editor.OutlinePage$SettingsDelegate.settingChanged(OutlinePage.java:1345)
at com.ibm.team.apt.internal.ide.ui.editor.PlanModeState$1.run(PlanModeState.java:396)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.runtime.Platform.run(Platform.java:880)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
at com.ibm.team.apt.internal.ide.ui.editor.PlanModeState.fireChangeEvent(PlanModeState.java:404)
at com.ibm.team.apt.internal.ide.ui.editor.PlanModeState.setSortMode(PlanModeState.java:218)
at com.ibm.team.apt.internal.ide.ui.editor.PlanModeConfigurationTab$StateUpdater.checkStateChanged(PlanModeConfigurationTab.java:67)
at com.ibm.team.apt.internal.ide.ui.jface.CheckboxListViewer.fireEvent(CheckboxListViewer.java:485)
at com.ibm.team.apt.internal.ide.ui.jface.CheckboxListViewer.access$7(CheckboxListViewer.java:480)
at com.ibm.team.apt.internal.ide.ui.jface.CheckboxListViewer$3.widgetSelected(CheckboxListViewer.java:498)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:228)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3840)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3439)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2384)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2348)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2200)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:495)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:288)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:490)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:193)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:386)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:549)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
Caused by: java.lang.NullPointerException
at com.ibm.team.apt.internal.client.PlanElement.getAttributeValue(PlanElement.java:91)
at com.ibm.team.apt.internal.client.scripting.facades.PlanElementScriptType.getAttributeValue(PlanElementScriptType.java:58)
at sun.reflect.GeneratedMethodAccessor73.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.ibm.team.apt.internal.common.scripting.impl.ScriptTypeFunction.call(ScriptTypeFunction.java:67)
... 72 more

0 votes


Be the first one to answer this question!

Register or log in to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details

Question asked: Sep 30 '10, 4:01 p.m.

Question was seen: 4,821 times

Last updated: Sep 30 '10, 4:01 p.m.

Confirmation Cancel Confirm