Здравствуйте, у меня есть Java веб-приложение, созданное в JSF ... когда вы нажимаете кнопку, оно должно записать строку в файл PDF и загрузить ее. Вот код:
String cont = "DATA CREARE: " + data_creare3 + "\n" + "CIF: " + cif3 + "\n" + "ID SOLICITARE: " + id_solicitare3 + "\n" + "DETALII" + detalii3 + "\n" + "TIP: " + tip3 + "\n" + "ID: " + id3;
startDownload(cont.getBytes(), "id.pdf");
Это строка и вызываемый метод, а также функция, которая выполняет загрузку.
private void startDownload(byte[] continut, String denumire) throws IOException{
FacesContext facesContext = FacesContext.getCurrentInstance();
ExternalContext externalContext = facesContext.getExternalContext();
// externalContext.responseReset();
externalContext.setResponseHeader("Cache-Control", "public");
externalContext.setResponseHeader("Pragma", "public");
externalContext.setResponseHeader("Content-Type", "application/pdf");
externalContext.setResponseHeader("Content-Length",
Integer.toString(continut.length));
externalContext.setResponseHeader("Content-Disposition","attachment;filename=\"" + denumire + "\"");
externalContext.getResponseOutputStream().write(continut);
facesContext.responseComplete();
}
Когда я нажимаю кнопку для загрузки там написано:
emptyResponse: An empty response was received from the server. Check server error logs
В журналах ошибок сервера написано:
2020-02-03 09:18:44,438 WARNING [javax.enterprise.resource.webcontainer.jsf.application] (default task-2) JSF1063: WARNING! Setting non-serializable attribute value into HttpSession (key: logic, value class: com.serban.Logic).
Что мне нужно сделать, чтобы это работало? Заранее спасибо