[GEF] thread safety issue [message #858770] |
Fri, 27 April 2012 09:38 |
Arnaud MERGEY Messages: 243 Registered: March 2010 Location: France |
Senior Member |
|
|
Hello,
we were facing a strange issue with multiple users accessing a GEF diagram
(See the stack trace above)
I cannot really create a reproducible snippet, it requires to load a diagram on the same application from multiple browser.
But by debugging and investigating the code, I suspect this issue is caused by
DEFAULT_SOURCE_ANCHOR and DEFAULT_TARGET_ANCHOR private static final constants define d in org.eclipse.gef.editparts.AbstractConnectionEditPart
So these should probably be replaced by Session singleton.
What do you think ?
java.lang.ArrayIndexOutOfBoundsException: 1
at java.util.ArrayList.add(ArrayList.java:352)
at
org.eclipse.draw2d.ConnectionAnchorBase.addAnchorListener(ConnectionAnchorBase.java:33)
at
org.eclipse.draw2d.PolylineConnection.hookTargetAnchor(PolylineConnection.java:166)
at
org.eclipse.draw2d.PolylineConnection.setTargetAnchor(PolylineConnection.java:313)
at
org.eclipse.gef.editparts.AbstractConnectionEditPart.refreshTargetAnchor(AbstractConnectionEditPart.java:242)
at
org.eclipse.gef.editparts.AbstractConnectionEditPart.refresh(AbstractConnectionEditPart.java:225)
at
org.eclipse.gef.editparts.AbstractEditPart.addNotify(AbstractEditPart.java:253)
at
org.eclipse.gef.editparts.AbstractGraphicalEditPart.addNotify(AbstractGraphicalEditPart.java:223)
at
org.eclipse.gef.editparts.AbstractConnectionEditPart.addNotify(AbstractConnectionEditPart.java:100)
at
org.eclipse.gef.editparts.AbstractConnectionEditPart.setParent(AbstractConnectionEditPart.java:268)
at
org.eclipse.gef.editparts.AbstractConnectionEditPart.setSource(AbstractConnectionEditPart.java:282)
at
org.eclipse.gef.editparts.AbstractGraphicalEditPart.addSourceConnection(AbstractGraphicalEditPart.java:260)
at
org.eclipse.gef.editparts.AbstractGraphicalEditPart.refreshSourceConnections(AbstractGraphicalEditPart.java:697)
at
org.eclipse.gef.editparts.AbstractGraphicalEditPart.refresh(AbstractGraphicalEditPart.java:645)
at
org.eclipse.gef.editparts.AbstractEditPart.addNotify(AbstractEditPart.java:253)
at
org.eclipse.gef.editparts.AbstractGraphicalEditPart.addNotify(AbstractGraphicalEditPart.java:223)
at
org.eclipse.gef.editparts.AbstractEditPart.addChild(AbstractEditPart.java:212)
Regards,
Arnaud
|
|
|
Powered by
FUDForum. Page generated in 0.03107 seconds