knime-ip / knip

KNIME Image Processing Extension
https://www.knime.com/community/image-processing
49 stars 12 forks source link

Image Reader (Table) no longer supports reading from remote file:// locations #509

Open gab1one opened 5 years ago

gab1one commented 5 years ago

https://forum.knime.com/t/image-reader-problem-in-knime-3-6-0/11935

stelfrich commented 5 years ago

Is it possible that this also affects network shares that are not mounted as drives in Windows? I had a similar issue in the training yesterday but haven't had the time to copy the stack trace..

imagejan commented 5 years ago

Yes, the behavior with mapped network drives is very annoying actually (since a while already):

With a given server \\myserver.example.com\some\share mounted on drive letter X:\:

If you guys can push a bit on that front, it'd be awesome :slightly_smiling_face:

stelfrich commented 5 years ago

I stumbled over this issue at a workshop here in Heidelberg again. With the IT setup here it was even more confusing since the Desktop folders of users in the computer pool are mapped to a remote location. So people actually thought that they had copied over their files to the local machine while they were just pushing them from one network share to another:

Stack trace with cleaned up URI:

java.io.IOException: Can't resolve file URI "file:%5C%5Csomething.uni-heidelberg.de%5CFolder%5CUserX%5CDesktop%5CFolder%5CKNIME_ImageProcessing_Heidelberg%5CData%5CclassB%20H3K9-Cy3DAPI%203.lsm.ome" to file
    at org.knime.core.util.pathresolve.ResolverUtil.resolveURItoLocalFile(ResolverUtil.java:115)
    at org.knime.core.util.pathresolve.ResolverUtil.resolveURItoLocalOrTempFile(ResolverUtil.java:154)
    at org.knime.core.util.pathresolve.ResolverUtil.resolveURItoLocalOrTempFile(ResolverUtil.java:139)
    at org.knime.knip.io.nodes.imgreader2.readfromdialog.ReadImg2Function.apply(ReadImg2Function.java:50)
    at org.knime.knip.io.nodes.imgreader2.readfromdialog.ImgReader2NodeModel.execute(ImgReader2NodeModel.java:166)
    at org.knime.core.node.NodeModel.execute(NodeModel.java:733)
    at org.knime.core.node.NodeModel.executeModel(NodeModel.java:567)
    at org.knime.core.node.Node.invokeFullyNodeModelExecute(Node.java:1177)
    at org.knime.core.node.Node.execute(Node.java:964)
    at org.knime.core.node.workflow.NativeNodeContainer.performExecuteNode(NativeNodeContainer.java:561)
    at org.knime.core.node.exec.LocalNodeExecutionJob.mainExecute(LocalNodeExecutionJob.java:95)
    at org.knime.core.node.workflow.NodeExecutionJob.internalRun(NodeExecutionJob.java:179)
    at org.knime.core.node.workflow.NodeExecutionJob.run(NodeExecutionJob.java:110)
    at org.knime.core.util.ThreadUtils$RunnableWithContextImpl.runWithContext(ThreadUtils.java:328)
    at org.knime.core.util.ThreadUtils$RunnableWithContext.run(ThreadUtils.java:204)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at org.knime.core.util.ThreadPool$MyFuture.run(ThreadPool.java:123)
    at org.knime.core.util.ThreadPool$Worker.run(ThreadPool.java:246)
Caused by: java.lang.IllegalArgumentException: URI is not hierarchical
    at java.io.File.<init>(File.java:418)
    at org.knime.core.util.pathresolve.ResolverUtil.resolveURItoLocalFile(ResolverUtil.java:113)
    ... 18 more