notch8 / hykuup_knapsack

container project for the Hyku Up deploy of Hyku
Apache License 2.0
1 stars 0 forks source link

MOBIUS: Truman cannot download JPEGs from the UV #276

Open jillpe opened 2 months ago

jillpe commented 2 months ago

Truman said the JPEGs are loading normally now, but when they click the download link in the lower left corner they get a "page you were looking for doesn't exist" error.

Examples: https://truman.digitalmobius.org/concern/mobius_works/00430380-f3af-4ddf-bd40-2da9068e7558?locale=en

https://truman.digitalmobius.org/concern/mobius_works/01ea679f-f0d3-4718-8a02-b729e7846413?locale=en

https://truman.digitalmobius.org/concern/mobius_works/01b98494-600c-486b-bc72-64473de1feae?locale=en

jillpe commented 1 month ago

Timebox to ~2 days

bkiahstroud commented 1 month ago

I'm able to replicate the same error in PALs demo. I am not able to replicate on Hyarx e1160bb. I am not able to replicate this on Hyku main.

This may be an issue related to knapsacks (although I don't think pals demo is running knapsack).


Reference screenshot ![image](https://github.com/user-attachments/assets/52f06549-c548-4f05-874b-7048e3bb16f0)

Clicking the first download option ("Whole image 1000 x 1291px (jpg)" input#wholeImageLowRes) opens a new tab with the following link and throws a 404 error:

https://truman.digitalmobius.org/c96cc7eb-7203-4bd8-9e3e-723d04608b19%2Ffiles%2Ff78dd999-5916-4555-9bdb-c389110104aa/full/1000,1291/0/default.jpg

Clicking the second download option ("Whole image 7288 x 9416px (?)" input#wholeImageHighRes) opens a new tab with the following URL and correctly renders the expected image:

https://truman.digitalmobius.org/images/c96cc7eb-7203-4bd8-9e3e-723d04608b19%2Ffiles%2Ff78dd999-5916-4555-9bdb-c389110104aa/full/7288,/0/default.jpg

The difference is the successful URL includes /images after the base; manually adding /images to the failing URL renders the image as expected:

https://truman.digitalmobius.org/images/c96cc7eb-7203-4bd8-9e3e-723d04608b19%2Ffiles%2Ff78dd999-5916-4555-9bdb-c389110104aa/full/1000,1291/0/default.jpg

I traced the issue down to the Universal Viewer's JS. Both options have different ways of determining the correct URL. The path that fails calls getInfoUri(), which returns "lib/imageunavailable.json", which ultimately gets transformed into an empty string.

My best guess is the issue stems from a misconfiguration and/or a malformed manifest since canvas.getImages() returns an empty Array.