Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 328340 - [ModelBrowser] java.lang.StringIndexOutOfBoundsException
Summary: [ModelBrowser] java.lang.StringIndexOutOfBoundsException
Status: CLOSED FIXED
Alias: None
Product: MoDisco
Classification: Modeling
Component: Infrastructure (show other bugs)
Version: 0.9.0   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 0.9.0 M3   Edit
Assignee: Nicolas Bros CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-10-21 08:10 EDT by Frédéric Madiot CLA
Modified: 2011-01-11 05:05 EST (History)
3 users (show)

See Also:
nicolas.bros: indigo+


Attachments
The model (6.01 MB, application/octet-stream)
2010-10-21 08:10 EDT, Frédéric Madiot CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Frédéric Madiot CLA 2010-10-21 08:10:25 EDT
Created attachment 181384 [details]
The model

I have this exception when I open the "4000...4999" group of Book instances with the attached model.



java.lang.StringIndexOutOfBoundsException: String index out of range: -37
	at java.lang.String.substring(Unknown Source)
	at org.eclipse.gmt.modisco.infra.common.core.internal.utils.StringUtils.truncateBeforeNewline(StringUtils.java:75)
	at org.eclipse.gmt.modisco.infra.common.core.internal.utils.ModelUtils.getDefaultName(ModelUtils.java:309)
	at org.eclipse.gmt.modisco.infra.browser.uicore.internal.model.ModelElementItem.getDisplayName(ModelElementItem.java:489)
	at org.eclipse.gmt.modisco.infra.browser.uicore.internal.model.ModelElementItem.getName(ModelElementItem.java:462)
	at org.eclipse.gmt.modisco.infra.browser.uicore.internal.model.ModelElementItem.getText(ModelElementItem.java:457)
	at org.eclipse.gmt.modisco.infra.browser.editors.BrowserLabelProvider.getText(BrowserLabelProvider.java:38)
	at org.eclipse.jface.viewers.WrappedViewerLabelProvider.getText(WrappedViewerLabelProvider.java:108)
	at org.eclipse.jface.viewers.WrappedViewerLabelProvider.update(WrappedViewerLabelProvider.java:164)
	at org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn.java:152)
	at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:934)
	at org.eclipse.jface.viewers.AbstractTreeViewer$UpdateItemSafeRunnable.run(AbstractTreeViewer.java:102)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
	at org.eclipse.jface.viewers.AbstractTreeViewer.doUpdateItem(AbstractTreeViewer.java:1014)
	at org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:481)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
	at org.eclipse.jface.viewers.StructuredViewer.updateItem(StructuredViewer.java:2141)
	at org.eclipse.jface.viewers.AbstractTreeViewer.createTreeItem(AbstractTreeViewer.java:829)
	at org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractTreeViewer.java:804)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:778)
	at org.eclipse.jface.viewers.TreeViewer.createChildren(TreeViewer.java:644)
	at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:749)
	at org.eclipse.jface.viewers.AbstractTreeViewer.handleTreeExpand(AbstractTreeViewer.java:1444)
	at org.eclipse.jface.viewers.TreeViewer.handleTreeExpand(TreeViewer.java:952)
	at org.eclipse.jface.viewers.AbstractTreeViewer$4.treeExpanded(AbstractTreeViewer.java:1455)
	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:132)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
	at org.eclipse.swt.widgets.Tree.wmNotifyChild(Tree.java:7408)
	at org.eclipse.swt.widgets.Control.wmNotify(Control.java:5096)
	at org.eclipse.swt.widgets.Composite.wmNotify(Composite.java:1887)
	at org.eclipse.swt.widgets.Control.WM_NOTIFY(Control.java:4726)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4215)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4873)
	at org.eclipse.swt.internal.win32.OS.CallWindowProcW(Native Method)
	at org.eclipse.swt.internal.win32.OS.CallWindowProc(OS.java:2362)
	at org.eclipse.swt.widgets.Tree.callWindowProc(Tree.java:1536)
	at org.eclipse.swt.widgets.Tree.WM_LBUTTONDOWN(Tree.java:6303)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4195)
	at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:5844)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4886)
	at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
	at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2459)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3655)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2629)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2593)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2427)
	at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:670)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:663)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	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:369)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1407)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1383)
Comment 1 Nicolas Bros CLA 2010-10-21 08:27:09 EDT
This model references a metamodel with URI "http:///org/eclipse/example/library.ecore". Could you please attach it as well?
Comment 2 Nicolas Bros CLA 2010-10-21 09:42:40 EDT
Fixed in revision 3352.
Comment 3 Hugo Bruneliere CLA 2011-01-11 05:05:22 EST
Bug fixed.