From 00455165dbcd2cff8eaed6a3793ab19aa48f7f9e Mon Sep 17 00:00:00 2001 From: Gabriele Zigurella Date: Mon, 27 Feb 2023 16:49:14 +0100 Subject: [PATCH] fix: handle Company void safety --- .../portos/firma/util/FirmaPostUtil.java | 74 ++++++++++--------- 1 file changed, 38 insertions(+), 36 deletions(-) diff --git a/liferay-plugins-sdk-6.2/portlets/portos-firma-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/firma/util/FirmaPostUtil.java b/liferay-plugins-sdk-6.2/portlets/portos-firma-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/firma/util/FirmaPostUtil.java index f0a20abc..29b9b776 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-firma-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/firma/util/FirmaPostUtil.java +++ b/liferay-plugins-sdk-6.2/portlets/portos-firma-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/firma/util/FirmaPostUtil.java @@ -62,46 +62,48 @@ public class FirmaPostUtil { } catch (Exception e) { _log.error(e, e); } - String urlPdfExtractor = (String) company.getExpandoBridge().getAttribute("url_pdf_extractor", false); - if (Validator.isNotNull(urlPdfExtractor)) { - byte[] fileArray = Base64.decode(token); - List listaCodiciFiscali = FirmaUtil.getCodiceFiscale(fileArray, urlPdfExtractor); - String cf = listaCodiciFiscali.get(0); - List listaFile = new ArrayList(); - try { - List listaAvvisi = AvvisoLocalServiceUtil.getListaAvvisiPerApplet(cf); - if (Validator.isNotNull(listaAvvisi) && listaAvvisi.size() > 0) { - for (Avviso avviso : listaAvvisi) { - if (Validator.isNotNull(avviso.getFileEntryIdBase())) { - DLFileEntry fileEntry = DLFileEntryLocalServiceUtil.fetchDLFileEntry(avviso - .getFileEntryIdBase()); - IntPratica intPratica = IntPraticaLocalServiceUtil.getIntPratica(avviso - .getIntPraticaId()); - if (Validator.isNotNull(fileEntry)) { - RestFile restFile = new RestFile(); - restFile.setIdFile(GetterUtil.getInteger(avviso.getAvvisoId())); - restFile.setDataInvio(new Date()); - String tipoDocumento = avviso.translateTipoDocumento(); - restFile.setDocumentiType(avviso.getTipoDocumento()); // TO-VERIFY - restFile.setNomeFile(LanguageUtil.get(Locale.ITALIAN, tipoDocumento) - + StringPool.SPACE + StringPool.DASH + StringPool.SPACE - + intPratica.getTitle(Locale.ITALIAN, true)); - restFile.setFile(""); - - Group group = GroupLocalServiceUtil.getGroup(avviso.getGroupId()); - Organization organization = OrganizationLocalServiceUtil.getOrganization(group - .getOrganizationId()); - restFile.setTipoPratica(organization.getName()); - listaFile.add(restFile); + if(Validator.isNotNull(company)){ + String urlPdfExtractor = (String) company.getExpandoBridge().getAttribute("url_pdf_extractor", false); + if (Validator.isNotNull(urlPdfExtractor)) { + byte[] fileArray = Base64.decode(token); + List listaCodiciFiscali = FirmaUtil.getCodiceFiscale(fileArray, urlPdfExtractor); + String cf = listaCodiciFiscali.get(0); + List listaFile = new ArrayList(); + try { + List listaAvvisi = AvvisoLocalServiceUtil.getListaAvvisiPerApplet(cf); + if (Validator.isNotNull(listaAvvisi) && listaAvvisi.size() > 0) { + for (Avviso avviso : listaAvvisi) { + if (Validator.isNotNull(avviso.getFileEntryIdBase())) { + DLFileEntry fileEntry = DLFileEntryLocalServiceUtil.fetchDLFileEntry(avviso + .getFileEntryIdBase()); + IntPratica intPratica = IntPraticaLocalServiceUtil.getIntPratica(avviso + .getIntPraticaId()); + if (Validator.isNotNull(fileEntry)) { + RestFile restFile = new RestFile(); + restFile.setIdFile(GetterUtil.getInteger(avviso.getAvvisoId())); + restFile.setDataInvio(new Date()); + String tipoDocumento = avviso.translateTipoDocumento(); + restFile.setDocumentiType(avviso.getTipoDocumento()); // TO-VERIFY + restFile.setNomeFile(LanguageUtil.get(Locale.ITALIAN, tipoDocumento) + + StringPool.SPACE + StringPool.DASH + StringPool.SPACE + + intPratica.getTitle(Locale.ITALIAN, true)); + restFile.setFile(""); + + Group group = GroupLocalServiceUtil.getGroup(avviso.getGroupId()); + Organization organization = OrganizationLocalServiceUtil.getOrganization(group + .getOrganizationId()); + restFile.setTipoPratica(organization.getName()); + listaFile.add(restFile); + } } } } + risposta.setObj(listaFile); + risposta.setRisposta(RispostaCostanti.OK); + } catch (Exception e) { + _log.error(e.getMessage(), e); + risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); } - risposta.setObj(listaFile); - risposta.setRisposta(RispostaCostanti.OK); - } catch (Exception e) { - _log.error(e.getMessage(), e); - risposta.setRisposta(RispostaCostanti.ERRORE_APPLICAZIONE); } } }