Ссылка для скачивания Wicket 8.x Excel не работает и показывает ошибку 404

Я обновил Wicket 1.x до wicket 8.x. После этого обновления загрузка Excel и PDF перестает работать и показывает ошибку 404.

Я обнаружил, что этот класс ниже был удален после версии калитки 1.5.

      org.apache.wicket.markup.html.DynamicWebResource

И этот класс ниже является заменой этого класса

      org.apache.wicket.request.resource.ByteArrayResource

Существуют ли какие-либо учебные пособия или демонстрации о том, как это сделать в версии Wicket 8.x?


person user3552342    schedule 29.12.2020    source источник


Ответы (1)


Использование примерно такое:

ResourceReference ref = new ResourceReference() {
  @Override
  public IResource getResource() {
     byte[] theExcelFileAsBytes = ...;
     return new  new ByteArrayResource("application/msexcel", theExcelFileAsBytes, "fileName.xsl");
  }
};

ResourceLink<Void> link = new ResourceLink<>("linkId", ref);
parent.add(link);

Вот статья о монтировании ресурсов по определенным путям. Вы можете использовать ExternalLink для ссылки на такой ресурс[ссылка].

person martin-g    schedule 29.12.2020
comment
Привет @martin-g, эта общая ссылка на статью связана с реализацией Wicket 1.5, которая в моем случае устарела. Я хочу реализовать это в версии Wicket 8.5. Пожалуйста, предложите какое-либо решение для этого? - person user3552342; 13.01.2021
comment
Для этой конкретной потребности API должен быть одинаковым в версиях 1.5.x и 8.x. Вы пробовали? Вы столкнулись с какими-либо проблемами?! - person martin-g; 13.01.2021
comment
Извините, я пропустил один шаг. Теперь реализовал предложенный вами код, и теперь он отлично работает для меня. Большое спасибо, Мартин. - person user3552342; 13.01.2021
comment
Пожалуйста, примите ответ. - person martin-g; 14.01.2021