Hello, I’ve created a Knime workflow that takes image URLs and reads the images, before downloading it to a folder for use in other projects. Historically the workflow and the image reader (table) node have worked like a charm, but for some reason last week I started getting an error message where it says “Encountered exception while reading image”. This is causing none of my images to load, instead causing the output to be a “?” The strange thing is the actual URL image still works if I type it into my browser. Is there something in my workflow/computer that could’ve changed to cause this issue, and is there any way to fix it?
What file type are you trying to read? jpg, png, tif, any other format?
Are you by chance behind a restrictive firewall? In that case, KNIME might not be successful in reading from the URL, even if your browser succeeds. You can adapt the proxy settings for your network in the KNIME preferences at General > Network Connections.
Thanks for your response. Mostly jpg format specifically.
For the firewall and network connections how would I know which settings to change and what to change it to?
Your local IT administration should be able to tell you which proxy settings are required (if at all).
To test whether the issue is connectivity-related (which was just my assumption here) or something else, you can try whether the same image URL works in the GET Request node. If KNIME can access the URL, you should see something like
image/jpeg in the Content type output column of that node.
Thanks for the suggestion. I tried pasting the url in GET Request as follows and got question marks. Does that mean it’s non connectivity-related?
I also saw the following message in the log, “Call #1 failed: java.util.concurrent.ExecutionException: javax.ws.rs.ProcessingException: javax.net.ssl.SSLHandshakeException: SSLHandshakeException invoking website.jpg sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target”
What would that be referring to?
You can try with an openly available sample image URL such as:
If that works (in GET Request as well as in Image Reader (Table)), then I’d say there’s some certificate issue with the server serving the .jpg file via HTTPS. You can still try whether using
http instead of
https in the URL works for you…
If you trust the URL to be not malicious, could you please enable the “Trust all certificates” option in the configuration of the GET Request node? This should allow it to at least connect to the URL.
Thank you stelfrich and imagejan. I changed the trust certificates option and i did see image/jpeg content type output. It seems therefore there’s some sort of proxy setting issue then.
As I mentioned when I wrote the question this wasn’t an issue until recently, is there a way to avoid this in the future besides talking to my local IT administration
You can work around this issue by adding the correct certificates to the keystore that is used by KNIME. We ship most common certificates with our keystore, but some are still not in there. You can find instructions on how to add specific certs to the keystore in the Client configuration section of KNIME Server Administration Guide. You will, however, still have to get the certificate from the server for adding it.
This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.