Выдает ошибку, когда я нажимаю, чтобы увидеть свои материалы на dspace

Когда я пытаюсь просмотреть свои сообщения в dspace, я получаю следующую ошибку в пути xmlui/submissions. Я не мог найти подсказку, как исправить ошибку

Недопустимый путь: 'ıtem.metadata' [ВЫБЕРИТЕ элемент ИЗ org.dspace.content.Item как элемент, левый присоединяемый ıtem.metadata dc_date_accessioned WITH dc_date_accessioned.metadataField.id = :dc_date_accessioned ГДЕ item.inArchive = :in_archive AND item.submitter =:submitter ORDER BY STR(dc_date_accessioned.value) desc]

Я получаю сообщение об ошибке, когда нажимаю на ссылку, чтобы просмотреть свои материалы http://[domain.com]:8080/xmlui/submissions

1 ответ

Скорее всего, вы столкнулись с ошибкой, связанной с локализацией, в кодовой базе:

строка 131 класса org.dspace.content.dao.impl.ItemDAOImplошибочно ожидает, что версия строки «Item» в нижнем регистре будет «item» (с точкой «i»), как это есть во многих (большинстве) сценариях (обычно «en»), но это не так для некоторых локалей. , как, например, "tr" или "az" , где аналог нижнего регистра — " ıtem " (обратите внимание на букву "i" без точки в начале) .

Это должно быть исправлено заменой 2-го аргумента вызова функции addMetadataLeftJoin(),

      Item.class.getSimpleName().toLowerCase() 
                           // localization-dependant, which is unwanted here

по

      Item.class.getSimpleName().toLowerCase(new Locale("en"))  
                           // => "item", no matter the java system locale

(или даже явно по ожидаемой строке результата "item"-- хотя это может вызвать вопросы стиля кода или обслуживания, которые сильно отстают от вашего вопроса/проблемы)

Другие вопросы по тегам