Files don't open

Hi there,

I have used ELAN for a while but recently, I have experienced some issues. Whenever I want to open existing files (.eaf, .wav, .mp4), I can only open them from the file > recent files menu. If I go on file > open, no window pops up to allow me to select a file. I have this issue in every part of the programme. Wherever there is normally an option to select your files, the “browse” button simply does not work. I can press on it but no window opens up.

I have tried changing my settings, uninstalling and reinstalling the programme, and nothing works. Does anyone know what I can do to solve this issue?

Many thanks for all your help!

Hi,

That’s strange indeed. If this was about any other type of window, I would wonder if this could be the result of previously having used a second monitor and the window is now created at the location of the second monitor, even if it is not there. But for the File->New... and similar file browsing windows, I don’t think that should be possible.
Still, in order to start without previous settings you could, when ELAN is not running, remove (or rename or temporarily move to another folder) the file elan.pfsx in the ELAN data folder (platform dependent) and then try again.

Furthermore, after selecting File->New... and not seeing the file browsing window, there might be information in the log, viewable via View->View Log.... Maybe there are more or less clear error messages towards the end of the log?

-Han

Hi Han,
Thanks for your quick response. I actually have never used a second monitor, so that can’t be it.
I also tried moving the elan.pfsx, which unfortunately did not resolve the problem.
When clicking on file → new, the log output is as follows:

INFO: Writing preferences: C:\Users\Mareille.elan_data\elan.pfsx
Exception in thread “AWT-EventQueue-0” java.lang.IllegalArgumentException: Comparison method violates its general contract!
at java.base/java.util.ComparableTimSort.mergeHi(Unknown Source)
at java.base/java.util.ComparableTimSort.mergeAt(Unknown Source)
at java.base/java.util.ComparableTimSort.mergeForceCollapse(Unknown Source)
at java.base/java.util.ComparableTimSort.sort(Unknown Source)
at java.base/java.util.Arrays.sort(Unknown Source)
at java.desktop/sun.awt.shell.Win32ShellFolderManager2.get(Unknown Source)
at java.desktop/sun.awt.shell.ShellFolder.get(Unknown Source)
at java.desktop/com.sun.java.swing.plaf.windows.WindowsFileChooserUI$DirectoryComboBoxModel.addItem(Unknown Source)
at java.desktop/com.sun.java.swing.plaf.windows.WindowsFileChooserUI.doDirectoryChanged(Unknown Source)
at java.desktop/com.sun.java.swing.plaf.windows.WindowsFileChooserUI$11.propertyChange(Unknown Source)
at java.desktop/java.beans.PropertyChangeSupport.fire(Unknown Source)
at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.desktop/java.awt.Component.firePropertyChange(Unknown Source)
at java.desktop/javax.swing.JFileChooser.setCurrentDirectory(Unknown Source)
at java.desktop/javax.swing.JFileChooser.(Unknown Source)
at java.desktop/javax.swing.JFileChooser.(Unknown Source)
at mpi.eudico.client.annotator.gui.FileChooser.createDialog(FileChooser.java:321)
at mpi.eudico.client.annotator.gui.FileChooser.createAndShowMultiFileDialog(FileChooser.java:728)
at mpi.eudico.client.annotator.gui.FileChooser.createAndShowMultiFileDialog(FileChooser.java:648)
at mpi.eudico.client.annotator.gui.FileChooser.createAndShowMultiFileDialog(FileChooser.java:634)
at mpi.eudico.client.annotator.commands.global.NewMA.actionPerformed(NewMA.java:51)
at java.desktop/javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at java.desktop/javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at java.desktop/javax.swing.AbstractButton.doClick(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
at java.desktop/java.awt.Component.processMouseEvent(Unknown Source)
at java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.desktop/java.awt.Component.processEvent(Unknown Source)
at java.desktop/java.awt.Container.processEvent(Unknown Source)
at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)

Hmm, that’s strange, it looks like there is a problem with one of the items that the file browser window tries to list.
I don’t have an idea of what could be going on, but do you see the same error if you switch to a different look and feel via Edit->Preferences->Edit Preferences-> Platform/OS? If you choose Cross Platform Java Look and Feel (or untick Use Windows Look and Feel, depending on your ELAN version), exit the program and launch it again?

Yes I think so. It comes up with this:

NFO: Writing preferences: C:\Users\Mareille.elan_data\elan.pfsx
Exception in thread “AWT-EventQueue-0” java.lang.IllegalArgumentException: Comparison method violates its general contract!
at java.base/java.util.ComparableTimSort.mergeHi(Unknown Source)
at java.base/java.util.ComparableTimSort.mergeAt(Unknown Source)
at java.base/java.util.ComparableTimSort.mergeForceCollapse(Unknown Source)
at java.base/java.util.ComparableTimSort.sort(Unknown Source)
at java.base/java.util.Arrays.sort(Unknown Source)
at java.desktop/sun.awt.shell.Win32ShellFolderManager2.get(Unknown Source)
at java.desktop/sun.awt.shell.ShellFolder.get(Unknown Source)
at java.desktop/javax.swing.plaf.metal.MetalFileChooserUI$DirectoryComboBoxModel.addItem(Unknown Source)
at java.desktop/javax.swing.plaf.metal.MetalFileChooserUI.doDirectoryChanged(Unknown Source)
at java.desktop/javax.swing.plaf.metal.MetalFileChooserUI$5.propertyChange(Unknown Source)
at java.desktop/java.beans.PropertyChangeSupport.fire(Unknown Source)
at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.desktop/java.awt.Component.firePropertyChange(Unknown Source)
at java.desktop/javax.swing.JFileChooser.setCurrentDirectory(Unknown Source)
at java.desktop/javax.swing.JFileChooser.(Unknown Source)
at java.desktop/javax.swing.JFileChooser.(Unknown Source)
at mpi.eudico.client.annotator.gui.FileChooser.createDialog(FileChooser.java:321)
at mpi.eudico.client.annotator.gui.FileChooser.createAndShowMultiFileDialog(FileChooser.java:728)
at mpi.eudico.client.annotator.gui.FileChooser.createAndShowMultiFileDialog(FileChooser.java:648)
at mpi.eudico.client.annotator.gui.FileChooser.createAndShowMultiFileDialog(FileChooser.java:634)
at mpi.eudico.client.annotator.commands.global.NewMA.actionPerformed(NewMA.java:51)
at java.desktop/javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at java.desktop/javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at java.desktop/javax.swing.AbstractButton.doClick(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
at java.desktop/java.awt.Component.processMouseEvent(Unknown Source)
at java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.desktop/java.awt.Component.processEvent(Unknown Source)
at java.desktop/java.awt.Container.processEvent(Unknown Source)
at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)

I was already afraid this would end with the same error; the problem seems to be on a low level in the Java runtime. I found some examples of similar errors on the internet, and here is something that you can maybe try. It involves editing a configuration file.

In the folder where ELAN is installed there is a app subfolder containing a .cfg file e.g. for ELAN 6.7:

\ELAN_6.7\app\ELAN_6.7.cfg

This file can be opened in a plain text editor, below the last line with java-options= entries, add the following:

java-options=–Djava.util.Arrays.useLegacyMergeSort=true

Save the .cfg file and relaunch to see if it makes any difference.

I have tried it but unfortunately, this led to the programme not launching at all.

Many thanks for all your help and effort though!

Strange that the application won’t launch anymore after that change (that’s different from my experience).

In case you’re willing to explore more, you can maybe send the elan0.log (elan1.log etc.) files to me by email (han.sloetjes AT mpi.nl), so that I can see if there are any clues in there. Those files should be in the “.elan_data” folder you see in the first line of your copied log output.
(By the way, is there really a C:\Users\Mareille.elan_data folder? I would expect a folder C:\Users\Mareille\.elan_data)