JabRef / jabref

Graphical Java application for managing BibTeX and biblatex (.bib) databases
https://devdocs.jabref.org
MIT License
3.53k stars 2.47k forks source link

Faulty DOI leads to an exception window #8675

Closed mlep closed 1 year ago

mlep commented 2 years ago

JabRef version

Latest development branch build (please note build date below)

Operating system

GNU / Linux

Details on version and operating system

JabRef 5.6--2022-04-12--d50adc1 Linux 4.19.0-20-amd64 amd64 Java 17.0.2 JavaFX 18+12

Checked with the latest development build

Steps to reproduce the behaviour

  1. Create a new entry
  2. Go to the tab General Fields
  3. Paste 10./e in the field DOI (an obviously wrong DOI, but with a proper format)
  4. On the same line, click on the button Get bibliographic data from DOI ==> JabRef displays a window "Exception Details. Unhandled exception occurred. No DOI data exists."

Note: 1) Clicking on the New entry button and pasting the DOI 10./e leads --- as expected --- to an Error window "Error while fetching from DOI. No DOI data exists" 2) Pasting the faulty DOI into the entry table does nothing. It should display the Error window

Appendix

...

Log File org.jabref.logic.importer.FetcherException: No DOI data exists at org.jabref@5.6.161/org.jabref.logic.importer.fetcher.DoiFetcher.performSearchById(Unknown Source) at org.jabref@5.6.161/org.jabref.gui.mergeentries.FetchAndMergeEntry.lambda$fetchAndMerge$0(Unknown Source) at org.jabref@5.6.161/org.jabref.gui.util.BackgroundTask$1.call(Unknown Source) at org.jabref@5.6.161/org.jabref.gui.util.DefaultTaskExecutor$1.call(Unknown Source) at org.jabref.merged.module@5.6.161/javafx.concurrent.Task$TaskCallable.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.io.FileNotFoundException: https://doi.org/10.1093/forestscience/53.2.181 at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Unknown Source) at java.base/java.lang.reflect.Constructor.newInstance(Unknown Source) at java.base/sun.net.www.protocol.http.HttpURLConnection$10.run(Unknown Source) at java.base/sun.net.www.protocol.http.HttpURLConnection$10.run(Unknown Source) at java.base/java.security.AccessController.doPrivileged(Unknown Source) at java.base/sun.net.www.protocol.http.HttpURLConnection.getChainedException(Unknown Source) at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source) at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown Source) at org.jabref@5.6.161/org.jabref.logic.net.URLDownload.asString(Unknown Source) at org.jabref@5.6.161/org.jabref.logic.net.URLDownload.asString(Unknown Source) ... 11 more Caused by: java.io.FileNotFoundException: https://doi.org/10.1093/forestscience/53.2.181 at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source) at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) at java.base/java.net.HttpURLConnection.getResponseCode(Unknown Source) at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(Unknown Source) at org.jabref@5.6.161/org.jabref.logic.net.URLDownload.openConnection(Unknown Source) ... 13 more
claell commented 2 years ago

I just saw this issue. Is this the same as #8743?

mlep commented 1 year ago

In JabRef 5.10--2023-02-28--74dc41b there is now a check for invalid DOI which forbid to get bibliographic data from an invalid DOI. So, the issue is solved. Closing