We had the Excel Importer setup in Mx 9.5.1 and it worked as expected, however, since upgrading to 9.6.9 we get an error when trying to import any columns that use a microflow as a parser. Basically just reading in a string and parsing it to a relevant enumeration…. all of which worked fine before the upgrade. Initially i had some trouble even getting the import to run, but after some digging on the Forum I cleaned out my userlib, redownloaded the latest excel importer module and i found i was able to import strings and booleans… The error is > Error in execution of monitored action '{"name":"ExcelImporter.IVK_ImportTemplateDocument","type":"Microflow"}' (execution id: 7d1c2ff3-29b4-41d0-8049-99f15b199613, execution type: CLIENT_ASYNC_MONITORED) java.lang.NoSuchMethodError: com.mendix.core.Core.execute(Lcom/mendix/systemwideinterfaces/core/IContext;Ljava/lang/String;Ljava/util/Map;)Ljava/lang/Object; at replication.implementation.MFValueParser.parseValue(MFValueParser.java:130) at replication.ValueParser.getValue(ValueParser.java:331) at excelimporter.reader.readers.replication.ExcelValueParser.getValue(ExcelValueParser.java:109) at excelimporter.reader.readers.replication.ExcelValueParser.getValueFromDataSet(ExcelValueParser.java:68) at excelimporter.reader.readers.ExcelRowProcessorImpl.processValues(ExcelRowProcessorImpl.java:59) at excelimporter.reader.readers.ExcelXLSXDataReader$SheetHandler.endElement(ExcelXLSXDataReader.java:131) at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:610) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1718) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2883) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:605) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:112) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:534) at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:888) at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:824) at java.xml/com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1216) at excelimporter.reader.readers.ExcelXLSXDataReader.readData(ExcelXLSXDataReader.java:44) at excelimporter.reader.readers.ExcelReader.importData(ExcelReader.java:370) at excelimporter.reader.ExcelImporter.startImport(ExcelImporter.java:120) at excelimporter.actions.StartImportByTemplate.executeAction(StartImportByTemplate.java:54) at excelimporter.actions.StartImportByTemplate.executeAction(StartImportByTemplate.java:25) at com.mendix.systemwideinterfaces.core.UserAction.execute(UserAction.java:46) at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.doCall(CoreActionHandlerImpl.scala:71) at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.call(CoreActionHandlerImpl.scala:48) at com.mendix.core.actionmanagement.internal.InternalCoreAction.call(InternalCoreAction.scala:25) at com.mendix.basis.actionmanagement.ActionManager.$anonfun$executeSync$2(ActionManager.scala:80) at com.mendix.util.classloading.Runner.withContextClassLoader(Runner.java:19) at com.mendix.basis.actionmanagement.ActionManager.executeSync(ActionManager.scala:79) at com.mendix.basis.actionmanagement.UserActionCallBuilderImpl.execute(UserActionCallBuilderImpl.scala:34) at com.mendix.modules.microflowengine.actions.actioncall.ForegroundJavaAction.doExecute(ForegroundJavaAction.scala:35) at com.mendix.modules.microflowengine.actions.actioncall.ForegroundJavaAction.doExecute(ForegroundJavaAction.scala:11) at com.mendix.modules.microflowengine.actions.actioncall.JavaAction.execute(JavaAction.scala:38) at com.mendix.modules.microflowengine.microflow.impl.MicroflowObject.$anonfun$execute$1(MicroflowObject.scala:32) at scala.Option.flatMap(Option.scala:283) at com.mendix.modules.microflowengine.microflow.impl.MicroflowObject.execute(MicroflowObject.scala:29) at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.$anonfun$executeAfterBreakingIfNecessary$2(MicroflowImpl.scala:167) at scala.Option.flatMap(Option.scala:283) at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAfterBreakingIfNecessary(MicroflowImpl.scala:167) at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAction(MicroflowImpl.scala:114) at com.mendix.systemwideinterfaces.core.UserAction.execute(UserAction.java:46) at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.doCall(CoreActionHandlerImpl.scala:71) at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.call(CoreActionHandlerImpl.scala:48) at com.mendix.core.actionmanagement.internal.InternalCoreAction.call(InternalCoreAction.scala:25) at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.$anonfun$runMonitoredAction$1(CoreActionHandlerImpl.scala:59) at com.mendix.basis.actionmanagement.ActionMonitoring$.$anonfun$monitor$1(ActionMonitoring.scala:49) at com.mendix.util.classloading.Runner.withContextClassLoader(Runner.java:19) at com.mendix.basis.actionmanagement.ActionMonitoring$.monitor(ActionMonitoring.scala:49) at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.runMonitoredAction(CoreActionHandlerImpl.scala:59) at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.call(CoreActionHandlerImpl.scala:46) at com.mendix.core.actionmanagement.internal.InternalCoreAction.call(InternalCoreAction.scala:25) at com.mendix.basis.actionmanagement.ActionManager.$anonfun$executeAsync$3(ActionManager.scala:64) at scala.concurrent.Future$.$anonfun$apply$1(Future.scala:672) at scala.concurrent.impl.Promise$Transformation.run(Promise.scala:431) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:834) i’ve tried looking for ‘replication.implementation.MFValueParser.parseValue(MFValueParser.java:130’ but cannot find it anywhere in my javasource or javascriptsource folders…. any ideas..?
asked
Justin Withington
1 answers
0
The error is Excel Importer complaining that the execute method doesn’t exist. This method was deprecated in Mendix 8.6. It looks like there is a .jar file called replication that is trying to call this method. Decompiling replication.jar I can see it’s using the new microflowCall method, so I think you probably have an old version of replication.jar left from your upgrade, instead of the new one.
To fix this, I would first delete replication.jar from the userlib, then reinstall the Excel Importer module in Studio Pro. That should ensure you have the right version of this module in your userlib.