Microflow Debugger broken

4
When following these steps: 1. Run the project 2. Set a breakpoint on a microflow action 3. Run the microflow The microflow is not run, instead I get the following error in my console: Log level: Error Log Node: MicroflowDebugger The stack trace is: java.lang.NullPointerException: null at com.mendix.modules.debugger.internal.DebuggerJSONGenerator$.addMxObjectProperties(DebuggerJSONGenerator.scala:127) at com.mendix.modules.debugger.internal.DebuggerJSONGenerator$.$anonfun$createMicroflowVariables$1(DebuggerJSONGenerator.scala:89) at scala.collection.immutable.HashMap.foreach(HashMap.scala:1058) at com.mendix.modules.debugger.internal.DebuggerJSONGenerator$.createMicroflowVariables(DebuggerJSONGenerator.scala:81) at com.mendix.modules.debugger.internal.DebuggerJSONGenerator$.createPausedMicroflowObject(DebuggerJSONGenerator.scala:64) at com.mendix.modules.debugger.internal.DebuggerJSONGenerator$.createEventObject(DebuggerJSONGenerator.scala:38) at com.mendix.modules.debugger.internal.DebuggerHandler.$anonfun$processJsonRequest$8(DebuggerHandler.scala:129) at scala.collection.Iterator$$anon$9.next(Iterator.scala:575) at scala.collection.mutable.Growable.addAll(Growable.scala:62) at scala.collection.mutable.Growable.addAll$(Growable.scala:59) at scala.collection.mutable.ArrayBuffer.addAll(ArrayBuffer.scala:147) at scala.collection.mutable.ArrayBuffer.addAll(ArrayBuffer.scala:40) at scala.collection.mutable.ArrayBuffer$.from(ArrayBuffer.scala:265) at scala.collection.mutable.ArrayBuffer$.from(ArrayBuffer.scala:253) at scala.collection.IterableOps.map(Iterable.scala:671) at scala.collection.IterableOps.map$(Iterable.scala:671) at scala.collection.AbstractIterable.map(Iterable.scala:920) at com.mendix.modules.debugger.internal.DebuggerHandler.processJsonRequest(DebuggerHandler.scala:129) at com.mendix.modules.debugger.internal.DebuggerHandler.processRequest(DebuggerHandler.scala:50) at com.mendix.externalinterface.connector.RequestHandler.doProcessRequest(RequestHandler.java:46) at com.mendix.external.connector.MxRuntimeConnector$1.execute(MxRuntimeConnector.java:76) at com.mendix.external.connector.MxRuntimeConnector$1.execute(MxRuntimeConnector.java:73) at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:26) at com.mendix.external.connector.MxRuntimeConnector.processRequest(MxRuntimeConnector.java:79) at com.mendix.basis.impl.MxRuntimeImplBase.processRequest(MxRuntimeImplBase.java:953) at com.mendix.m2ee.appcontainer.server.handler.RuntimeServlet.service(RuntimeServlet.java:42) at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:763) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1631) at org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:226) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1618) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:549) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1610) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1369) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:489) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1580) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1284) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) at org.eclipse.jetty.server.Server.handle(Server.java:501) at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383) at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:556) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:272) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103) at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938) at java.base/java.lang.Thread.run(Thread.java:834) I've uninstalled Mendix (8.14), deleted the project folder from my disk and restarted my computer. After that I installed Mendix (8.14) again, opened the project and used the local database of a colleague of mine. This did not solve the problem. I'm not sure what to do next, but as for now I cannot debug anything. Does anyone have any suggestions?
asked
5 answers
9

UPDATE

I've filed in a support ticket and today I got a response. Apparently this is something at their end. It will be fixed on Studio Pro 8.15.0 which will be released soon.

answered
2

I've done some digging and it seems to happen within microflows that a part of a REST service. The debugger does work for microflows that are triggered by a button, as datasource or on-change event.

I've tried several microflows of different REST services, and for all of them I get this error. I also tried adding a breakpoint on different actions/splits, but that does not matter.

answered
1

Tried to reproduce it, but it works on my machine. :-(

Is the microflow triggered by a button, as datasource or on-change event triggered?

answered
1

Important addition to Release notes regarding this issue: 
https://docs.mendix.com/releasenotes/studio-pro/8.14 

  • When microflows are executed in a context without an authenticated user (meaning, as a background job or as a REST service that does not require authentication), debugging fails. An error message appears in the log and breakpoints are not triggered.


Require authentication on the service in question removed the crashing behavior and also explains why it it didn’t happen on our other services.

 

answered
0

Your mentioned Mendix version 8.13.0 was taken back from the app store and is no longer available. Maybe it could be some problem with this Mendix version.
Please download 8.13.* version or the latest 8.14.0 and check if the issue persists. 

answered