NullPointerException when trying to view artifact history
Good afternoon,
When trying to view the history of an artifact I get the following error:
"Could not open the editor: An unexpected exception was thrown."
When I click on the Details button I get this stack trace. This happens when I try and view the history for any artifact type. There should be history associated with these artifacts as they have undergone several changes. Thanks for your help!
java.lang.NullPointerException
at java.util.Calendar.setTime(Calendar.java:1081)
at com.ibm.rdm.ui.utils.EditorUtil.getLocalDateString(EditorUtil.java:186)
at com.ibm.rdm.ui.utils.EditorUtil.getToolTipText(EditorUtil.java:167)
at com.ibm.rdm.ba.ui.EditingDomainEditorInput.getToolTipText(EditingDomainEditorInput.java:149)
at org.eclipse.ui.part.EditorPart.getTitleToolTip(EditorPart.java:147)
at org.eclipse.ui.internal.PartTester.testWorkbenchPart(PartTester.java:109)
at org.eclipse.ui.internal.PartTester.testEditor(PartTester.java:37)
at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:671)
at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:428)
at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:594)
at org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:266)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2820)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2729)
at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2721)
at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2673)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2668)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2652)
at com.ibm.rdm.ui.utils.DocumentUtil.openEditor(DocumentUtil.java:274)
at com.ibm.rdm.ui.server.editor.input.RepositoryEditorInputHelper.openEditorFor(RepositoryEditorInputHelper.java:43)
at com.ibm.rdm.ui.gef.editor.input.EditorInputHelper.openEditor(EditorInputHelper.java:29)
at com.ibm.rdm.ui.gef.editor.input.EditorInputHelper.openEditor(EditorInputHelper.java:25)
at com.ibm.rdm.ui.actions.OpenHistoryAction.run(OpenHistoryAction.java:85)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:583)
at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:500)
at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411)
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:3823)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3422)
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 com.ibm.rdm.ui.application.ReqComposerApplication.start(ReqComposerApplication.java:126)
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:45)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:599)
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)
at org.eclipse.equinox.launcher.Main.main(Main.java:1212)
When trying to view the history of an artifact I get the following error:
"Could not open the editor: An unexpected exception was thrown."
When I click on the Details button I get this stack trace. This happens when I try and view the history for any artifact type. There should be history associated with these artifacts as they have undergone several changes. Thanks for your help!
java.lang.NullPointerException
at java.util.Calendar.setTime(Calendar.java:1081)
at com.ibm.rdm.ui.utils.EditorUtil.getLocalDateString(EditorUtil.java:186)
at com.ibm.rdm.ui.utils.EditorUtil.getToolTipText(EditorUtil.java:167)
at com.ibm.rdm.ba.ui.EditingDomainEditorInput.getToolTipText(EditingDomainEditorInput.java:149)
at org.eclipse.ui.part.EditorPart.getTitleToolTip(EditorPart.java:147)
at org.eclipse.ui.internal.PartTester.testWorkbenchPart(PartTester.java:109)
at org.eclipse.ui.internal.PartTester.testEditor(PartTester.java:37)
at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:671)
at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:428)
at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:594)
at org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:266)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2820)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2729)
at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2721)
at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2673)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2668)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2652)
at com.ibm.rdm.ui.utils.DocumentUtil.openEditor(DocumentUtil.java:274)
at com.ibm.rdm.ui.server.editor.input.RepositoryEditorInputHelper.openEditorFor(RepositoryEditorInputHelper.java:43)
at com.ibm.rdm.ui.gef.editor.input.EditorInputHelper.openEditor(EditorInputHelper.java:29)
at com.ibm.rdm.ui.gef.editor.input.EditorInputHelper.openEditor(EditorInputHelper.java:25)
at com.ibm.rdm.ui.actions.OpenHistoryAction.run(OpenHistoryAction.java:85)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:583)
at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:500)
at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411)
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:3823)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3422)
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 com.ibm.rdm.ui.application.ReqComposerApplication.start(ReqComposerApplication.java:126)
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:45)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:599)
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)
at org.eclipse.equinox.launcher.Main.main(Main.java:1212)
8 answers
Could you tell us what version of Composer Client you are running and the locale setting of your client machine? Thanks.
I'm running...
Version: 1.0.0.1
Build id: N20090410_0821
By locale do you mean time zone? My machine is setup for EST. If that's not the case let me know and I'll see if I can provide that.
Thanks!
No, I was trying to determine which regional/language setting you are using? Are you using English (US) or something else?
Is the server also running 1.0.0.1?
Ah, yes, using English (US). Yes, the server is also running 1.0.0.1.
I had previously been using a local copy of Composer with a local instance of DB2 and didn't have this problem. Once we got the actual server configured in a single location so everyone could access it we started to see this problem.
I'm going to have to give some thought on how to debug this. The error seems to indicate that there was a problem parsing the last modified timestamp and outside of a locale type issue, I'm not sure how that might happen. I may need to send you a modified plugin to get some additional information written to the log.
I'm going to have to give some thought on how to debug this. The error seems to indicate that there was a problem parsing the last modified timestamp and outside of a locale type issue, I'm not sure how that might happen. I may need to send you a modified plugin to get some additional information written to the log.
If the locale settings are different on the server vs. my client machine would that make any difference?
If the locale settings are different on the server vs. my client machine would that make any difference?
It's not supposed to if you have iFix2 or Fixpack1 installed (both client and server). As I recall the server is expected to provide such information in a locale neutral (or always US locale) way independent of the locale of the server.
So I had a closer look at the FixPack1 code. The exception you included in your very first post is what you see in the editor window when it says there was an exception and you requested to see more details, correct?
There should also be ParseException information related to this error in the .log file. The log file would typically be located here:
C:\Documents and Settings\{Windows login id}\IBM\RequirementsComposer\workspace\.metadata\.log
See if you don't spot the ParseException details there and post it please.
And just to be absolutely sure, you are running Fixpack1 and NOT iFix1, correct?
There should also be ParseException information related to this error in the .log file. The log file would typically be located here:
C:\Documents and Settings\{Windows login id}\IBM\RequirementsComposer\workspace\.metadata\.log
See if you don't spot the ParseException details there and post it please.
And just to be absolutely sure, you are running Fixpack1 and NOT iFix1, correct?