Task #9407 (closed)
Bug: cannot export downgraded OME-TIFFs from Linux or Windows
Reported by: | mlinkert | Owned by: | jburel |
---|---|---|---|
Priority: | critical | Milestone: | OMERO-4.4.4 |
Component: | Insight | Version: | n.a. |
Keywords: | n.a. | Cc: | ux@…, ajpatterson |
Resources: | n.a. | Referenced By: | n.a. |
References: | n.a. | Remaining Time: | 0.0d |
Sprint: | 2012-08-14 (2) |
Description
Using 4.4.1 or Insight built from the tip of develop, the downgrade schema selection is not available when exporting an image to OME-TIFF.
The exception thrown is:
java.lang.IllegalArgumentException: No Catalog found. at org.openmicroscopy.shoola.env.data.util.TransformsParser.parse(TransformsParser.java:168) at org.openmicroscopy.shoola.agents.util.ui.DowngradeChooser.parseData(DowngradeChooser.java:94) at org.openmicroscopy.shoola.agents.util.ui.DowngradeChooser.<init>(DowngradeChooser.java:132) at org.openmicroscopy.shoola.agents.metadata.editor.EditorControl.export(EditorControl.java:373) at org.openmicroscopy.shoola.agents.metadata.editor.EditorControl.actionPerformed(EditorControl.java:742) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242) at javax.swing.AbstractButton.doClick(AbstractButton.java:357) at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:809) at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:850) at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272) at java.awt.Component.processMouseEvent(Component.java:6288) at javax.swing.JComponent.processMouseEvent(JComponent.java:3267) at java.awt.Component.processEvent(Component.java:6053) at java.awt.Container.processEvent(Container.java:2041) at java.awt.Component.dispatchEventImpl(Component.java:4651) at java.awt.Container.dispatchEventImpl(Container.java:2099) at java.awt.Component.dispatchEvent(Component.java:4481) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168) at java.awt.Container.dispatchEventImpl(Container.java:2085) at java.awt.Window.dispatchEventImpl(Window.java:2478) at java.awt.Component.dispatchEvent(Component.java:4481) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:643) at java.awt.EventQueue.access$000(EventQueue.java:84) at java.awt.EventQueue$1.run(EventQueue.java:602) at java.awt.EventQueue$1.run(EventQueue.java:600) at java.security.AccessController.doPrivileged(Native Method) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98) at java.awt.EventQueue$2.run(EventQueue.java:616) at java.awt.EventQueue$2.run(EventQueue.java:614) at java.security.AccessController.doPrivileged(Native Method) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87) at java.awt.EventQueue.dispatchEvent(EventQueue.java:613) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161) at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
As far as I can tell, the problem is that the CLASSPATH on Linux and Windows is just 'omero.insight.jar', and 'libs/specification.jar' must be on the CLASSPATH in order for the schemas to be loaded. I would guess that this isn't an issue on Mac OS X as the CLASSPATH is set in the Info.plist.
Attachments (1)
Change History (17)
comment:1 Changed 12 years ago by jburel
- Cc ux@… added
comment:2 Changed 12 years ago by jburel
- Cc ajpatterson added
Looking closely at the code, the jar is loaded. The key ome-transforms.xml could not be found. Andrew did you modify the specification jar while I was away. Since I cannot reproduce the problem described in the ticket.
comment:3 Changed 12 years ago by jburel
Any info on that one?
Gus could you test as well. I cannot reproduce it.
comment:4 Changed 12 years ago by jburel
- Remaining Time set to 0.4
- Sprint set to 2012-08-14 (2)
- Status changed from new to accepted
Investigating what's going on.
- Changing code so it is still possible to export even if an error occurred.
Changed 12 years ago by mlinkert-x
comment:5 Changed 12 years ago by mlinkert
Screenshot attached of what I see when I do the following:
- download and unzip latest merge-green: OMERO.insight-4.4.1-74-aeb5eda-ice33-b127.zip
- run ./OMEROinsight_unix.sh
- log in to gretzky as user-3
- navigate to Image 11766
- click "Export as OME-TIFF" on the "General" tab
This is with Ubuntu 12.04 and Java 1.6.0_24-b07.
comment:6 Changed 12 years ago by jburel
I modified the code to log the error if any. This will be available in tomorrow's build.
It could also be a UI problem when customizing the file chooser itself.
comment:7 Changed 12 years ago by jburel
I managed to reproduce by building directly on Windows.
The problem only shows up when using directly the .sh or .bat files.
comment:8 Changed 12 years ago by jburel
- Remaining Time changed from 0.4 to 0
- Resolution set to fixed
- Status changed from accepted to closed
The problem occurs on all 3 platforms when running insight via the command java -jar omero.insight.jar
The commit 3426ca5cb65a6f8a56fcff3950c39a0f862d3e3b reads the manifest and determine the location of the specification.jar.
To test:
- run insight java -jar omero.insight.jar or use the .sh or .bat file depending on the platform.
- Make sure that the application works too
comment:9 Changed 12 years ago by jburel
- Resolution fixed deleted
- Status changed from closed to reopened
The solution in place does not work for webstart, imageJ. This will need a bit more work.
comment:10 Changed 12 years ago by jburel
- Status changed from reopened to closed
comment:11 Changed 12 years ago by jburel
see #9472 for webstart
comment:12 Changed 12 years ago by jburel <j.burel@…>
(In [6111e91032e98f329092b1b4a7d2bab81c1b710b/ome.git] on branch develop) Catch exception and allow to export if error (see #9407)
Log the exception. Allow to export as OME-TIFF when the catalog
cannot be read.
comment:13 Changed 12 years ago by jburel <j.burel@…>
(In [3426ca5cb65a6f8a56fcff3950c39a0f862d3e3b/ome.git] on branch develop) Read Manifest to determine jars on the class path (see #9407)
Determine the location of the specification jar when
running insight via the command java -jar omero.insight.jar
The location is determined from the Manifest.
comment:14 Changed 12 years ago by jburel <j.burel@…>
(In [8a13d6546cea4d7f9c7394545db042b394f5760a/ome.git] on branch develop) Modify reading of specification jar (see #9407)
This version now works for imageJ.
comment:15 Changed 12 years ago by jburel <j.burel@…>
(In [49e67f631afbe754f783ce5d36b000a5df27b849/ome.git] on branch develop) Modify loader for webstart (see #9407)
comment:16 Changed 12 years ago by jburel <j.burel@…>
(In [a5b6cecea5348059341324ced23a132bde1230c8/ome.git] on branch develop) Make sure the input streams are closed (see #9407)
I have used the latest merge-green build under Windows and do not notice the problem.
I am able