| Summary: | IllegalArgumentException from org.eclipse.wst.jsdt.core.dom.ASTNode.setSourceRange at comparing js files | ||
|---|---|---|---|
| Product: | [WebTools] JSDT | Reporter: | ferengra <ferengra> |
| Component: | General | Assignee: | Project Inbox <jsdt.javascript-inbox> |
| Status: | RESOLVED WORKSFORME | QA Contact: | Nitin Dahyabhai <thatnitind> |
| Severity: | normal | ||
| Priority: | P3 | CC: | cmjaun, thatnitind |
| Version: | unspecified | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Windows 7 | ||
| Whiteboard: | |||
Moving to WTP/JSDT to comment first. This issue has already been fixed in 3.2.3 and HEAD. I was able to see a compare screen with the file contents in the bug description. I confirm that the issue is fixed in Eclipse Helios (3.6.1) with WTP 3.2.2. Js files with Spring security taglib (<security:authorize ifAnyGranted="">) can be compared. |
Build Identifier: I20090611-1540 !ENTRY org.eclipse.wst.jsdt.ui 4 0 2010-12-20 14:42:48.281 !MESSAGE Error in JSDT Core during AST creation !STACK 0 java.lang.IllegalArgumentException at org.eclipse.wst.jsdt.core.dom.ASTNode.setSourceRange(ASTNode.java:2540) at org.eclipse.wst.jsdt.core.dom.ASTConverter.convert(ASTConverter.java:1093) at org.eclipse.wst.jsdt.core.dom.ASTConverter.convert(ASTConverter.java:1588) at org.eclipse.wst.jsdt.core.dom.ASTConverter.convert(ASTConverter.java:794) at org.eclipse.wst.jsdt.core.dom.ASTConverter.convert(ASTConverter.java:1513) at org.eclipse.wst.jsdt.core.dom.ASTConverter.convertToVariableDeclarationFragment(ASTConverter.java:2913) at org.eclipse.wst.jsdt.core.dom.ASTConverter.convertToVariableDeclarationStatement(ASTConverter.java:2938) at org.eclipse.wst.jsdt.core.dom.ASTConverter.checkAndAddMultipleLocalDeclaration(ASTConverter.java:321) at org.eclipse.wst.jsdt.core.dom.ASTConverter.convert(ASTConverter.java:1232) at org.eclipse.wst.jsdt.core.dom.JavaScriptUnitResolver.convert(JavaScriptUnitResolver.java:262) at org.eclipse.wst.jsdt.core.dom.ASTParser.internalCreateAST(ASTParser.java:887) at org.eclipse.wst.jsdt.core.dom.ASTParser.createAST(ASTParser.java:647) at org.eclipse.wst.jsdt.internal.ui.javaeditor.ASTProvider$1.run(ASTProvider.java:581) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.wst.jsdt.internal.ui.javaeditor.ASTProvider.createAST(ASTProvider.java:574) at org.eclipse.wst.jsdt.internal.ui.javaeditor.ASTProvider.getAST(ASTProvider.java:509) at org.eclipse.wst.jsdt.internal.ui.viewsupport.SelectionListenerWithASTManager$PartListenerGroup.calculateASTandInform(SelectionListenerWithASTManager.java:150) at org.eclipse.wst.jsdt.internal.ui.viewsupport.SelectionListenerWithASTManager$3.run(SelectionListenerWithASTManager.java:135) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) !ENTRY org.eclipse.ui 4 0 2010-12-20 14:42:50.946 !MESSAGE Unhandled event loop exception !STACK 0 org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.IllegalArgumentException) at org.eclipse.swt.SWT.error(SWT.java:3884) at org.eclipse.swt.SWT.error(SWT.java:3799) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:137) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3855) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3476) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493) 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:194) 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:368) 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:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514) at org.eclipse.equinox.launcher.Main.run(Main.java:1311) Caused by: java.lang.IllegalArgumentException at org.eclipse.wst.jsdt.core.dom.ASTNode.setSourceRange(ASTNode.java:2540) at org.eclipse.wst.jsdt.core.dom.ASTConverter.convert(ASTConverter.java:796) at org.eclipse.wst.jsdt.core.dom.ASTConverter.convert(ASTConverter.java:1513) at org.eclipse.wst.jsdt.core.dom.ASTConverter.convertToVariableDeclarationFragment(ASTConverter.java:2913) at org.eclipse.wst.jsdt.core.dom.ASTConverter.convertToVariableDeclarationStatement(ASTConverter.java:2938) at org.eclipse.wst.jsdt.core.dom.ASTConverter.checkAndAddMultipleLocalDeclaration(ASTConverter.java:321) at org.eclipse.wst.jsdt.core.dom.ASTConverter.convert(ASTConverter.java:1232) at org.eclipse.wst.jsdt.core.dom.JavaScriptUnitResolver.convert(JavaScriptUnitResolver.java:262) at org.eclipse.wst.jsdt.core.dom.ASTParser.internalCreateAST(ASTParser.java:887) at org.eclipse.wst.jsdt.core.dom.ASTParser.createAST(ASTParser.java:647) at org.eclipse.wst.jsdt.internal.ui.compare.JavaStructureCreator.createStructureComparator(JavaStructureCreator.java:284) at org.eclipse.wst.jsdt.internal.ui.compare.JavaStructureCreator.createStructureComparator(JavaStructureCreator.java:243) at org.eclipse.compare.structuremergeviewer.StructureCreator.internalCreateStructure(StructureCreator.java:116) at org.eclipse.compare.structuremergeviewer.StructureCreator.access$0(StructureCreator.java:104) at org.eclipse.compare.structuremergeviewer.StructureCreator$1.run(StructureCreator.java:91) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.compare.internal.Utilities.runInUIThread(Utilities.java:775) at org.eclipse.compare.structuremergeviewer.StructureCreator.createStructure(StructureCreator.java:97) at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$StructureInfo.createStructure(StructureDiffViewer.java:155) at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$StructureInfo.refresh(StructureDiffViewer.java:133) at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$StructureInfo.setInput(StructureDiffViewer.java:104) at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.compareInputChanged(StructureDiffViewer.java:347) at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$2.run(StructureDiffViewer.java:74) at org.eclipse.compare.structuremergeviewer.StructureDiffViewer$6.run(StructureDiffViewer.java:322) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.compareInputChanged(StructureDiffViewer.java:319) at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.compareInputChanged(StructureDiffViewer.java:307) at org.eclipse.wst.jsdt.internal.ui.compare.JavaStructureDiffViewer.compareInputChanged(JavaStructureDiffViewer.java:143) at org.eclipse.compare.structuremergeviewer.StructureDiffViewer.inputChanged(StructureDiffViewer.java:278) at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:274) at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1634) at org.eclipse.compare.CompareViewerSwitchingPane.setInput(CompareViewerSwitchingPane.java:270) at org.eclipse.compare.internal.CompareStructureViewerSwitchingPane.setInput(CompareStructureViewerSwitchingPane.java:132) at org.eclipse.compare.CompareEditorInput.feedInput(CompareEditorInput.java:718) at org.eclipse.compare.CompareEditorInput.createContents(CompareEditorInput.java:545) at org.eclipse.compare.internal.CompareEditor.createCompareControl(CompareEditor.java:449) at org.eclipse.compare.internal.CompareEditor.access$6(CompareEditor.java:416) at org.eclipse.compare.internal.CompareEditor$3.run(CompareEditor.java:372) at org.eclipse.ui.internal.UILockListener.doPendingWork(UILockListener.java:155) at org.eclipse.ui.internal.UISynchronizer$3.run(UISynchronizer.java:158) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134) ... 22 more Reproducible: Always Steps to Reproduce: 1. Open Team Syncrinizing perspective 2. SVN synchronize 3. Double clicking on a js file (portfolio-tab.js) with a change. Original js: var pftPortfolioTypeStore = new Ext.data.JsonStore({ root: 'portfolioTypes', fields : [ {name : 'id'}, {name : 'name'}, {name : 'attributes'} ], proxy: new Ext.data.HttpProxy({ url: '<c:url value="/portfolioType/portfolioTypes.jdo"/>', method: 'GET' }), sortInfo: {field: 'name', direction: 'ASC'} }); Modified js: var pftPortfolioTypeStore = new Ext.data.JsonStore({ root: 'portfolioTypes', fields : [ {name : 'id'}, {name : 'name'}, {name : 'attributes'} ], proxy: new Ext.data.HttpProxy({ url: '<c:url value="/portfolioType/portfolioTypes.jdo"/>', method: 'GET' }), sortInfo: {field: 'name', direction: 'ASC'}, listeners: { load : function(store, records, options) { <security:authorize ifAnyGranted="MODIFY_PORTFOLIO_ATTRIBUTE_VALUES_BEFORE"> </security:authorize> } } }); 4. Empty window is shown.