I have encountered randomly that, when logging in using the login widget, users get removed from the database. This also includes the MxAdmin. So randomly, when I try to log in and I fail, I receive the following error in my console: com.mendix.systemwideinterfaces.MendixRuntimeException: Object access cannot be retrieved. at ii.a(SourceFile:1015) Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 at java.util.ArrayList.RangeCheck(ArrayList.java:547) at java.util.ArrayList.get(ArrayList.java:322) at aU.a(SourceFile:228) at aU$1.a(SourceFile:292) at aU$1.get(SourceFile:240) at ii.a(SourceFile:1011) at ih.f(SourceFile:159) at ih.hasReadAccess(SourceFile:168) at ig.getMembers(SourceFile:117) at jj.a(SourceFile:249) at jj.a(SourceFile:137) at jj.a(SourceFile:84) at jd.a(SourceFile:48) at jb.a(SourceFile:263) at jb.b(SourceFile:203) at jb.a(SourceFile:189) at jb.processRequest(SourceFile:128) at je.a(SourceFile:74) at com.mendix.core.MxRuntime.processRequest(SourceFile:907) at com.mendix.m2ee.server.handler.RuntimeHandler.handle(RuntimeHandler.java:45) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:111) at org.eclipse.jetty.server.Server.handle(Server.java:351) at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:454) at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:900) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:954) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:857) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235) at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:77) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:609) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:45) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:599) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:534) at java.lang.Thread.run(Thread.java:662) After this I find that the user is deleted. Please note that this does not happen everytime a login fails and that it occurs in every browser. Thanks in advance for the help!
What do you have running as your homepage microflow? Also check the permissions of your users that are logging in. The login widget will never delete the users, so it must be something to do with your entity security permissions, a microflow that is running as a homepage microflow, or some form which is running an action to delete the accounts. Try right clicking on your user entity in the domain model and click find microflow actions. Then select delete and you can see where any deletes occur.
We have consulted with mendix and they say that there are two ways in which this issue will be fixed.
The first methode is to edit the login widget to avoid people from pressing the button twice. In our login widget java script we check if the button is pressed again with the same username and password as the previouse time and if this is the case we disable the button
this.submitButton.setAttribute("disabled","true"); Since we implemented this we did not have any problems anymore.
The second methode is to step over to version 5.10 in which mendix has implemented a platform fix for the bug. I have not tested this yet, since this release is not out at this current moment
And also check your delete behaviour. It could be that when deleting one entity due to the delete behaviour anouther entity is also deleted.