Example usage for com.liferay.portal.kernel.portlet PortletResponseUtil sendFile

List of usage examples for com.liferay.portal.kernel.portlet PortletResponseUtil sendFile

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.portlet PortletResponseUtil sendFile.

Prototype

public static void sendFile(PortletRequest portletRequest, MimeResponse mimeResponse, String fileName,
            InputStream inputStream, String contentType) throws IOException 

Source Link

Usage

From source file:com.liferay.contacts.web.internal.portlet.ContactsCenterPortlet.java

License:Open Source License

public void exportVCard(ResourceRequest resourceRequest, ResourceResponse resourceResponse) throws Exception {

    long userId = ParamUtil.getLong(resourceRequest, "userId");

    User user = userService.getUserById(userId);

    String vCard = ContactsUtil.getVCard(user);

    PortletResponseUtil.sendFile(resourceRequest, resourceResponse, user.getFullName() + ".vcf",
            vCard.getBytes(StringPool.UTF8), "text/x-vcard; charset=UTF-8");
}

From source file:com.liferay.contacts.web.internal.portlet.ContactsCenterPortlet.java

License:Open Source License

public void exportVCards(ResourceRequest resourceRequest, ResourceResponse resourceResponse) throws Exception {

    long[] userIds = StringUtil.split(ParamUtil.getString(resourceRequest, "userIds"), 0L);

    List<User> users = new ArrayList<>(userIds.length);

    for (long userId : userIds) {
        User user = userService.getUserById(userId);

        users.add(user);/*  w  ww .java  2s . c o m*/
    }

    String vCards = ContactsUtil.getVCards(users);

    PortletResponseUtil.sendFile(resourceRequest, resourceResponse, "vcards.vcf",
            vCards.getBytes(StringPool.UTF8), "text/x-vcard; charset=UTF-8");
}

From source file:com.liferay.document.library.web.internal.portlet.action.DownloadEntriesMVCResourceCommand.java

License:Open Source License

protected void downloadFolder(ResourceRequest resourceRequest, ResourceResponse resourceResponse)
        throws Exception {

    ThemeDisplay themeDisplay = (ThemeDisplay) resourceRequest.getAttribute(WebKeys.THEME_DISPLAY);

    long repositoryId = ParamUtil.getLong(resourceRequest, "repositoryId");
    long folderId = ParamUtil.getLong(resourceRequest, "folderId");

    File file = null;/*from w  w  w  .  j a  v  a 2  s.c  o  m*/
    InputStream inputStream = null;

    try {
        String zipFileName = getZipFileName(folderId, themeDisplay);

        ZipWriter zipWriter = ZipWriterFactoryUtil.getZipWriter();

        zipFolder(repositoryId, folderId, StringPool.SLASH, zipWriter);

        file = zipWriter.getFile();

        inputStream = new FileInputStream(file);

        PortletResponseUtil.sendFile(resourceRequest, resourceResponse, zipFileName, inputStream,
                ContentTypes.APPLICATION_ZIP);
    } finally {
        StreamUtil.cleanUp(inputStream);

        if (file != null) {
            file.delete();
        }
    }
}

From source file:com.liferay.dynamic.data.lists.form.web.internal.portlet.action.ExportRecordSetMVCResourceCommand.java

License:Open Source License

@Override
protected void doServeResource(ResourceRequest resourceRequest, ResourceResponse resourceResponse)
        throws Exception {

    ThemeDisplay themeDisplay = (ThemeDisplay) resourceRequest.getAttribute(WebKeys.THEME_DISPLAY);

    long recordSetId = ParamUtil.getLong(resourceRequest, "recordSetId");

    DDLRecordSet recordSet = _ddlRecordSetService.getRecordSet(recordSetId);

    String fileExtension = ParamUtil.getString(resourceRequest, "fileExtension");

    String fileName = recordSet.getName(themeDisplay.getLocale()) + CharPool.PERIOD + fileExtension;

    DDLExporter exporter = _ddlExporterFactory.getDDLExporter(fileExtension);

    exporter.setLocale(themeDisplay.getLocale());

    byte[] bytes = exporter.export(recordSetId, WorkflowConstants.STATUS_APPROVED);

    String contentType = MimeTypesUtil.getContentType(fileName);

    PortletResponseUtil.sendFile(resourceRequest, resourceResponse, fileName, bytes, contentType);
}

From source file:com.liferay.dynamic.data.mapping.form.web.internal.portlet.action.ExportFormInstanceMVCResourceCommand.java

License:Open Source License

@Override
protected void doServeResource(ResourceRequest resourceRequest, ResourceResponse resourceResponse)
        throws Exception {

    ThemeDisplay themeDisplay = (ThemeDisplay) resourceRequest.getAttribute(WebKeys.THEME_DISPLAY);

    long formInstanceId = ParamUtil.getLong(resourceRequest, "formInstanceId");

    DDMFormInstance formInstance = _formInstanceService.getFormInstance(formInstanceId);

    String fileExtension = ParamUtil.getString(resourceRequest, "fileExtension");

    String fileName = formInstance.getName(themeDisplay.getLocale()) + CharPool.PERIOD + fileExtension;

    DDMFormExporter exporter = _ddmExporterFactory.getDDMFormExporter(fileExtension);

    exporter.setLocale(themeDisplay.getLocale());

    byte[] bytes = exporter.export(formInstanceId, WorkflowConstants.STATUS_APPROVED);

    String contentType = MimeTypesUtil.getContentType(fileName);

    PortletResponseUtil.sendFile(resourceRequest, resourceResponse, fileName, bytes, contentType);
}

From source file:com.liferay.dynamic.data.mapping.web.internal.portlet.action.GetStructureMVCResourceCommand.java

License:Open Source License

@Override
protected void doServeResource(ResourceRequest resourceRequest, ResourceResponse resourceResponse)
        throws Exception {

    long structureId = ParamUtil.getLong(resourceRequest, "structureId");

    DDMStructure structure = _ddmStructureService.getStructure(structureId);

    String definition = structure.getDefinition();

    PortletResponseUtil.sendFile(resourceRequest, resourceResponse, null, definition.getBytes(),
            ContentTypes.APPLICATION_JSON);
}

From source file:com.liferay.dynamic.data.mapping.web.internal.portlet.action.GetTemplateMVCResourceCommand.java

License:Open Source License

@Override
protected void doServeResource(ResourceRequest resourceRequest, ResourceResponse resourceResponse)
        throws Exception {

    long templateId = ParamUtil.getLong(resourceRequest, "templateId");

    DDMTemplate template = _ddmTemplateService.getTemplate(templateId);

    String script = template.getScript();

    String contentType = null;//  ww  w  .j  a v  a2s .c o m

    String type = template.getType();

    String language = GetterUtil.getString(template.getLanguage(), TemplateConstants.LANG_TYPE_VM);

    if (type.equals(DDMTemplateConstants.TEMPLATE_TYPE_FORM)) {
        contentType = ContentTypes.APPLICATION_JSON;
    } else if (language.equals(TemplateConstants.LANG_TYPE_XSL)) {
        contentType = ContentTypes.TEXT_XML_UTF8;
    } else {
        contentType = ContentTypes.TEXT_PLAIN_UTF8;
    }

    PortletResponseUtil.sendFile(resourceRequest, resourceResponse, null, script.getBytes(), contentType);
}

From source file:com.liferay.knowledgebase.portlet.BaseKBPortlet.java

License:Open Source License

public void serveAttachment(ResourceRequest resourceRequest, ResourceResponse resourceResponse)
        throws Exception {

    long fileEntryId = ParamUtil.getLong(resourceRequest, "fileEntryId");

    FileEntry fileEntry = PortletFileRepositoryUtil.getPortletFileEntry(fileEntryId);

    PortletResponseUtil.sendFile(resourceRequest, resourceResponse, fileEntry.getTitle(),
            fileEntry.getContentStream(), fileEntry.getMimeType());
}

From source file:com.liferay.knowledgebase.portlet.BaseKBPortlet.java

License:Open Source License

public void serveKBArticleRSS(ResourceRequest resourceRequest, ResourceResponse resourceResponse)
        throws Exception {

    if (!PortalUtil.isRSSFeedsEnabled()) {
        PortalUtil.sendRSSFeedsDisabledError(resourceRequest, resourceResponse);

        return;//  ww w.ja v  a2  s  . c  om
    }

    ThemeDisplay themeDisplay = (ThemeDisplay) resourceRequest.getAttribute(WebKeys.THEME_DISPLAY);

    long resourcePrimKey = ParamUtil.getLong(resourceRequest, "resourcePrimKey");

    int rssDelta = ParamUtil.getInteger(resourceRequest, "rssDelta");
    String rssDisplayStyle = ParamUtil.getString(resourceRequest, "rssDisplayStyle");
    String rssFormat = ParamUtil.getString(resourceRequest, "rssFormat");

    String rss = KBArticleServiceUtil.getKBArticleRSS(resourcePrimKey, WorkflowConstants.STATUS_APPROVED,
            rssDelta, rssDisplayStyle, rssFormat, themeDisplay);

    PortletResponseUtil.sendFile(resourceRequest, resourceResponse, null, rss.getBytes(StringPool.UTF8),
            ContentTypes.TEXT_XML_UTF8);
}

From source file:com.liferay.mail.portlet.MailPortlet.java

License:Open Source License

@Override
public void serveResource(ResourceRequest resourceRequest, ResourceResponse resourceResponse)
        throws IOException, PortletException {

    String mvcPath = resourceRequest.getParameter("mvcPath");

    if (mvcPath.equals("/attachment.jsp")) {
        HttpServletRequest request = PortalUtil.getHttpServletRequest(resourceRequest);

        long attachmentId = ParamUtil.getLong(resourceRequest, "attachmentId");

        AttachmentHandler attachmentHandler = null;

        try {/*from   w  w  w.  ja  v  a  2 s .  com*/
            MailManager mailManager = MailManager.getInstance(request);

            Attachment attachment = AttachmentLocalServiceUtil.getAttachment(attachmentId);

            attachmentHandler = mailManager.getAttachment(attachmentId);

            if (attachmentHandler != null) {
                String contentType = MimeTypesUtil.getContentType(attachment.getFileName());

                PortletResponseUtil.sendFile(resourceRequest, resourceResponse, attachment.getFileName(),
                        attachmentHandler.getInputStream(), contentType);
            }
        } catch (Exception e) {
            _log.error(e, e);
        } finally {
            attachmentHandler.cleanUp();
        }
    } else {
        super.serveResource(resourceRequest, resourceResponse);
    }
}