Problem with Mendix 7.2: java.lang.IllegalArgumentException: Global identifier should be a number

0
Hi, We have a critical problem in multiple projects since updating to 7.2. Before 7.2 everything worked fine. We cannot (yet) reproduce this error in a fresh project, but it goes wrong in all of our projects when we set a certain relation before we enter a page. If we do exactly the same after we left the page, it works. Security level is on production, when we set the security level to demo/prototype, there is no error. We checked our entity access and that should not be the problem.    Are there more people running into this error after updating to Mendix 7.2 ?   Example of stacktrace: com.mendix.core.CoreRuntimeException: com.mendix.systemwideinterfaces.MendixRuntimeException: com.mendix.core.CoreRuntimeException: Exception occurred in action '{"changes":"{FamilyTree.Persoon_Child=[[MendixIdentifier:: id=11821949021848857 objectType=plugin_Erfrechtplan.Persoon entityID=42], [MendixIdentifier:: id=11821949021847556 objectType=plugin_Erfrechtplan.Persoon...","type":"ChangeAction"}', all database changes executed by this action were rolled back at com.mendix.basis.actionmanagement.ActionManager.executeSync(ActionManager.java:178) Caused by: com.mendix.systemwideinterfaces.MendixRuntimeException: com.mendix.core.CoreRuntimeException: Exception occurred in action '{"changes":"{FamilyTree.Persoon_Child=[[MendixIdentifier:: id=11821949021848857 objectType=plugin_Erfrechtplan.Persoon entityID=42], [MendixIdentifier:: id=11821949021847556 objectType=plugin_Erfrechtplan.Persoon...","type":"ChangeAction"}', all database changes executed by this action were rolled back at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:37) Caused by: com.mendix.core.CoreRuntimeException: Exception occurred in action '{"changes":"{FamilyTree.Persoon_Child=[[MendixIdentifier:: id=11821949021848857 objectType=plugin_Erfrechtplan.Persoon entityID=42], [MendixIdentifier:: id=11821949021847556 objectType=plugin_Erfrechtplan.Persoon...","type":"ChangeAction"}', all database changes executed by this action were rolled back at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.processErrorState(CoreActionHandlerImpl.scala:152) Caused by: java.lang.IllegalArgumentException: Global identifier should be a number (given value: [[MendixIdentifier:: id=11821949021848857 objectType=plugin_Erfrechtplan.Persoon entityID=42]) at com.mendix.basis.objectmanagement.MendixIdentifier.getGuidFromGlobalIdentifier(MendixIdentifier.java:74) at com.mendix.basis.objectmanagement.MendixIdentifier.<init>(MendixIdentifier.java:54) at com.mendix.basis.objectmanagement.member.MendixObjectReferenceSetImpl$$anonfun$5.apply(MendixObjectReferenceSetImpl.scala:182) at com.mendix.basis.objectmanagement.member.MendixObjectReferenceSetImpl$$anonfun$5.apply(MendixObjectReferenceSetImpl.scala:181) at scala.collection.TraversableLike$WithFilter$$anonfun$map$2.apply(TraversableLike.scala:683) at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33) at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:186) at scala.collection.TraversableLike$WithFilter.map(TraversableLike.scala:682) at com.mendix.basis.objectmanagement.member.MendixObjectReferenceSetImpl.getValueFromStringSet(MendixObjectReferenceSetImpl.scala:181) at com.mendix.basis.objectmanagement.member.MendixObjectReferenceSetImpl.getValueFromString(MendixObjectReferenceSetImpl.scala:157) at com.mendix.basis.objectmanagement.member.MendixObjectReferenceSetImpl.getValueFromString(MendixObjectReferenceSetImpl.scala:25) at com.mendix.basis.action.user.Changer$class.setMemberValue(Changer.scala:60) at com.mendix.basis.action.user.Changer$class.changeMember(Changer.scala:31) at com.mendix.basis.action.user.ChangeAction.changeMember(ChangeAction.scala:13) at com.mendix.basis.action.user.ChangeAction$$anonfun$executeAction$1.apply(ChangeAction.scala:36) at com.mendix.basis.action.user.ChangeAction$$anonfun$executeAction$1.apply(ChangeAction.scala:35) at scala.collection.Iterator$class.foreach(Iterator.scala:893) at scala.collection.AbstractIterator.foreach(Iterator.scala:1336) at scala.collection.IterableLike$class.foreach(IterableLike.scala:72) at scala.collection.AbstractIterable.foreach(Iterable.scala:54) at com.mendix.basis.action.user.ChangeAction.executeAction(ChangeAction.scala:35) at com.mendix.basis.action.user.ChangeAction.executeAction(ChangeAction.scala:13) at com.mendix.systemwideinterfaces.core.UserAction.execute(UserAction.java:50) at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.doCall(CoreActionHandlerImpl.scala:73) at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.call(CoreActionHandlerImpl.scala:53) at com.mendix.core.actionmanagement.CoreAction.call(CoreAction.java:51) at com.mendix.basis.actionmanagement.ActionManager$1.execute(ActionManager.java:170) at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:33) at com.mendix.basis.actionmanagement.ActionManager.executeSync(ActionManager.java:174) at com.mendix.basis.component.InternalCore.change(InternalCore.java:136) at com.mendix.webui.requesthandling.RequestHandlingUtil$$anonfun$validateChanges$1$$anonfun$3.apply(RequestHandlingUtil.scala:50) at com.mendix.webui.requesthandling.RequestHandlingUtil$$anonfun$validateChanges$1$$anonfun$3.apply(RequestHandlingUtil.scala:37) at scala.collection.TraversableLike$WithFilter$$anonfun$map$2.apply(TraversableLike.scala:683) at scala.collection.immutable.HashMap$HashMap1.foreach(HashMap.scala:221) at scala.collection.immutable.HashMap$HashTrieMap.foreach(HashMap.scala:428) at scala.collection.TraversableLike$WithFilter.map(TraversableLike.scala:682) at com.mendix.webui.requesthandling.RequestHandlingUtil$$anonfun$validateChanges$1.apply(RequestHandlingUtil.scala:37) at com.mendix.webui.requesthandling.RequestHandlingUtil$$anonfun$validateChanges$1.apply(RequestHandlingUtil.scala:32) at scala.Option.map(Option.scala:146) at com.mendix.webui.requesthandling.RequestHandlingUtil$.validateChanges(RequestHandlingUtil.scala:32) at com.mendix.webui.requesthandling.ClientRequestHandler$$anonfun$handleRequest$1.apply$mcV$sp(ClientRequestHandler.scala:300) at com.mendix.webui.requesthandling.ClientRequestHandler$$anonfun$handleRequest$1.apply(ClientRequestHandler.scala:293) at com.mendix.webui.requesthandling.ClientRequestHandler$$anonfun$handleRequest$1.apply(ClientRequestHandler.scala:293) at com.mendix.basis.actionmanagement.IMonitoredAction$$anon$1.execute(IMonitoredAction.scala:47) at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:33) at com.mendix.basis.actionmanagement.IMonitoredAction$class.monitor(IMonitoredAction.scala:49) at com.mendix.webui.requesthandling.ClientRequestHandler$ClientMonitoredAction.monitor(ClientRequestHandler.scala:408) at com.mendix.webui.requesthandling.ClientRequestHandler.handleRequest(ClientRequestHandler.scala:293) at com.mendix.webui.requesthandling.ClientRequestHandler.handleActionWithSessionRequired(ClientRequestHandler.scala:235) at com.mendix.webui.requesthandling.ClientRequestHandler.handleAction(ClientRequestHandler.scala:202) at com.mendix.webui.requesthandling.ClientRequestHandler.liftedTree1$1(ClientRequestHandler.scala:101) at com.mendix.webui.requesthandling.ClientRequestHandler.processRequest(ClientRequestHandler.scala:93) at com.mendix.externalinterface.connector.RequestHandler.doProcessRequest(RequestHandler.java:40) at com.mendix.external.connector.MxRuntimeConnector$1.execute(MxRuntimeConnector.java:70) at com.mendix.external.connector.MxRuntimeConnector$1.execute(MxRuntimeConnector.java:67) at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:33) at com.mendix.external.connector.MxRuntimeConnector.processRequest(MxRuntimeConnector.java:73) at com.mendix.basis.impl.MxRuntimeImpl.processRequest(MxRuntimeImpl.java:885) at com.mendix.m2ee.appcontainer.server.handler.RuntimeHandler.handle(RuntimeHandler.java:41) at org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116) at org.eclipse.jetty.server.Server.handle(Server.java:368) at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489) at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:953) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1014) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:861) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240) at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543) at java.lang.Thread.run(Thread.java:745)  
asked
1 answers
0

Hi Armando,

There is indeed an issue in 7.2.0 with regard to reference set members which are read-only for the user. In this case its values are not correctly serialized from the server to the client (browser), leading to the exception you encounter.
We're are working on a fix, I'll add a known issue to the 7.2.0 release notes. 
Sorry for the inconvenience and thanks for reporting the issue.

answered