Bug #3510
Mis à jour par Serge Heiden il y a presque 2 ans
h3. How to reproduce 1
To repoduce;
* import a TXT+CSV TXt+CSV corpus
* annotate the corpus with a new CQP property
* save the annotations
* open a concordance -> the concordance cannot be displayed with error message and stacktrace: ERROR
<pre>
** Error while building interface: Format specifier '%s'.
java.util.MissingFormatArgumentException: Format specifier '%s'
at java.base/java.util.Formatter.format(Formatter.java:2688)
at java.base/java.util.Formatter.format(Formatter.java:2625)
at java.base/java.lang.String.format(String.java:4143)
at org.txm.searchengine.cqp.ReferencePattern.format(ReferencePattern.java:360)
at org.txm.searchengine.cqp.ReferencePattern.getTitle(ReferencePattern.java:415)
at org.txm.concordance.rcp.editors.ConcordanceEditor.refreshReferenceColumnTitle(ConcordanceEditor.java:1997)
at org.txm.concordance.rcp.editors.ConcordanceEditor.composeDisplayArea(ConcordanceEditor.java:409)
at org.txm.concordance.rcp.editors.ConcordanceEditor._createPartControl(ConcordanceEditor.java:354)
</pre>
h3. How to reproduce 2 [SLH TXM 0.8.3 (2023-11-07 09h15)]
* import clipboard
* build the concordance of a word
* annotate some pivots lines with a new CQP property
* update corpus
* open the same concordance -> the concordance cannot be displayed with error message and stacktrace: <pre>
** Une erreur s'est produite lors de la récupération des lignes de la concordance : org.txm.searchengine.cqp.serverException.CqiClErrorNoSuchAttribute: .
org.txm.searchengine.cqp.serverException.CqiClErrorNoSuchAttribute:
at org.txm.searchengine.cqp.MemCqiClient.throwExceptionFromCqi(MemCqiClient.java:146)
at org.txm.searchengine.cqp.MemCqiClient.throwExceptionFromCqi(MemCqiClient.java:66)
at org.txm.searchengine.cqp.MemCqiClient.cpos2Str(MemCqiClient.java:409)
at org.txm.searchengine.cqp.corpus.WordProperty.cpos2Str(WordProperty.java:71)
at org.txm.searchengine.cqp.AbstractCqiClient.getData(AbstractCqiClient.java:161)
at org.txm.concordance.core.functions.Concordance.getLines(Concordance.java:805)
at org.txm.concordance.rcp.editors.ConcordanceEditor.fillDisplayArea(ConcordanceEditor.java:966)
at org.txm.concordance.rcp.editors.ConcordanceEditor.updateEditorFromResult(ConcordanceEditor.java:1491)
at org.txm.rcp.editors.TXMEditor.refresh(TXMEditor.java:1246)
at org.txm.rcp.editors.TXMEditor.openEditor(TXMEditor.java:1175)
at org.txm.rcp.editors.TXMEditor.openEditor(TXMEditor.java:1098)
at org.txm.concordance.rcp.handlers.ComputeConcordance.execute(ComputeConcordance.java:96)
at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:283)
at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:97)
at jdk.internal.reflect.GeneratedMethodAccessor81.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:58)
at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:317)
at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:251)
at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:173)
at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:156)
at org.eclipse.core.commands.Command.executeWithChecks(Command.java:488)
at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:485)
at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:213)
at org.eclipse.ui.internal.handlers.LegacyHandlerService.executeCommand(LegacyHandlerService.java:389)
at org.eclipse.ui.internal.handlers.LegacyHandlerService.executeCommand(LegacyHandlerService.java:366)
at org.txm.rcp.handlers.BaseAbstractHandler.executeCommand(BaseAbstractHandler.java:268)
at org.txm.rcp.handlers.BaseAbstractHandler.executeCommand(BaseAbstractHandler.java:189)
at org.txm.rcp.views.corpora.CorporaView$3.doubleClick(CorporaView.java:347)
at org.eclipse.jface.viewers.StructuredViewer$1.run(StructuredViewer.java:780)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:174)
at org.eclipse.jface.viewers.StructuredViewer.fireDoubleClick(StructuredViewer.java:777)
at org.eclipse.jface.viewers.AbstractTreeViewer.handleDoubleSelect(AbstractTreeViewer.java:1542)
at org.eclipse.jface.viewers.StructuredViewer$4.widgetDefaultSelected(StructuredViewer.java:1211)
at org.eclipse.jface.util.OpenStrategy.fireDefaultSelectionEvent(OpenStrategy.java:272)
at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:329)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5796)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1529)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5025)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4477)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171)
at org.txm.rcp.Application.startDesktop(Application.java:278)
at org.txm.rcp.Application.start(Application.java:123)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596)
at org.eclipse.equinox.launcher.Main.run(Main.java:1467)
at org.eclipse.equinox.launcher.Main.main(Main.java:1440)
</pre>
h3. Hypothesis
Corpus update breaks default parameter XXX of TXT+CSV import module based corpora.
To repoduce;
* import a TXT+CSV TXt+CSV corpus
* annotate the corpus with a new CQP property
* save the annotations
* open a concordance -> the concordance cannot be displayed with error message and stacktrace: ERROR
<pre>
** Error while building interface: Format specifier '%s'.
java.util.MissingFormatArgumentException: Format specifier '%s'
at java.base/java.util.Formatter.format(Formatter.java:2688)
at java.base/java.util.Formatter.format(Formatter.java:2625)
at java.base/java.lang.String.format(String.java:4143)
at org.txm.searchengine.cqp.ReferencePattern.format(ReferencePattern.java:360)
at org.txm.searchengine.cqp.ReferencePattern.getTitle(ReferencePattern.java:415)
at org.txm.concordance.rcp.editors.ConcordanceEditor.refreshReferenceColumnTitle(ConcordanceEditor.java:1997)
at org.txm.concordance.rcp.editors.ConcordanceEditor.composeDisplayArea(ConcordanceEditor.java:409)
at org.txm.concordance.rcp.editors.ConcordanceEditor._createPartControl(ConcordanceEditor.java:354)
</pre>
h3. How to reproduce 2 [SLH TXM 0.8.3 (2023-11-07 09h15)]
* import clipboard
* build the concordance of a word
* annotate some pivots lines with a new CQP property
* update corpus
* open the same concordance -> the concordance cannot be displayed with error message and stacktrace: <pre>
** Une erreur s'est produite lors de la récupération des lignes de la concordance : org.txm.searchengine.cqp.serverException.CqiClErrorNoSuchAttribute: .
org.txm.searchengine.cqp.serverException.CqiClErrorNoSuchAttribute:
at org.txm.searchengine.cqp.MemCqiClient.throwExceptionFromCqi(MemCqiClient.java:146)
at org.txm.searchengine.cqp.MemCqiClient.throwExceptionFromCqi(MemCqiClient.java:66)
at org.txm.searchengine.cqp.MemCqiClient.cpos2Str(MemCqiClient.java:409)
at org.txm.searchengine.cqp.corpus.WordProperty.cpos2Str(WordProperty.java:71)
at org.txm.searchengine.cqp.AbstractCqiClient.getData(AbstractCqiClient.java:161)
at org.txm.concordance.core.functions.Concordance.getLines(Concordance.java:805)
at org.txm.concordance.rcp.editors.ConcordanceEditor.fillDisplayArea(ConcordanceEditor.java:966)
at org.txm.concordance.rcp.editors.ConcordanceEditor.updateEditorFromResult(ConcordanceEditor.java:1491)
at org.txm.rcp.editors.TXMEditor.refresh(TXMEditor.java:1246)
at org.txm.rcp.editors.TXMEditor.openEditor(TXMEditor.java:1175)
at org.txm.rcp.editors.TXMEditor.openEditor(TXMEditor.java:1098)
at org.txm.concordance.rcp.handlers.ComputeConcordance.execute(ComputeConcordance.java:96)
at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:283)
at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:97)
at jdk.internal.reflect.GeneratedMethodAccessor81.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:58)
at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:317)
at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:251)
at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:173)
at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:156)
at org.eclipse.core.commands.Command.executeWithChecks(Command.java:488)
at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:485)
at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:213)
at org.eclipse.ui.internal.handlers.LegacyHandlerService.executeCommand(LegacyHandlerService.java:389)
at org.eclipse.ui.internal.handlers.LegacyHandlerService.executeCommand(LegacyHandlerService.java:366)
at org.txm.rcp.handlers.BaseAbstractHandler.executeCommand(BaseAbstractHandler.java:268)
at org.txm.rcp.handlers.BaseAbstractHandler.executeCommand(BaseAbstractHandler.java:189)
at org.txm.rcp.views.corpora.CorporaView$3.doubleClick(CorporaView.java:347)
at org.eclipse.jface.viewers.StructuredViewer$1.run(StructuredViewer.java:780)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:174)
at org.eclipse.jface.viewers.StructuredViewer.fireDoubleClick(StructuredViewer.java:777)
at org.eclipse.jface.viewers.AbstractTreeViewer.handleDoubleSelect(AbstractTreeViewer.java:1542)
at org.eclipse.jface.viewers.StructuredViewer$4.widgetDefaultSelected(StructuredViewer.java:1211)
at org.eclipse.jface.util.OpenStrategy.fireDefaultSelectionEvent(OpenStrategy.java:272)
at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:329)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5796)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1529)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5025)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4477)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171)
at org.txm.rcp.Application.startDesktop(Application.java:278)
at org.txm.rcp.Application.start(Application.java:123)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596)
at org.eclipse.equinox.launcher.Main.run(Main.java:1467)
at org.eclipse.equinox.launcher.Main.main(Main.java:1440)
</pre>
h3. Hypothesis
Corpus update breaks default parameter XXX of TXT+CSV import module based corpora.