Example usage for com.liferay.portal.kernel.util PortalUtil getHttpServletResponse

List of usage examples for com.liferay.portal.kernel.util PortalUtil getHttpServletResponse

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.util PortalUtil getHttpServletResponse.

Prototype

public static HttpServletResponse getHttpServletResponse(PortletResponse portletResponse) 

Source Link

Usage

From source file:com.liferay.marketplace.store.web.internal.portlet.RemoteMVCPortlet.java

License:Open Source License

protected void remoteProcessAction(ActionRequest actionRequest, ActionResponse actionResponse)
        throws Exception {

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

    OAuthRequest oAuthRequest = new OAuthRequest(Verb.POST, getServerPortletURL());

    setRequestParameters(actionRequest, actionResponse, oAuthRequest);

    addOAuthParameter(oAuthRequest, "p_p_lifecycle", "1");
    addOAuthParameter(oAuthRequest, "p_p_state", WindowState.NORMAL.toString());

    Response response = getResponse(themeDisplay.getUser(), oAuthRequest);

    if (response.getCode() == HttpServletResponse.SC_FOUND) {
        String redirectLocation = response.getHeader(HttpHeaders.LOCATION);

        actionResponse.sendRedirect(redirectLocation);
    } else {//  ww w .  ja va2  s  . c  o m
        HttpServletResponse httpServletResponse = PortalUtil.getHttpServletResponse(actionResponse);

        httpServletResponse.setContentType(response.getHeader(HttpHeaders.CONTENT_TYPE));

        ServletResponseUtil.write(httpServletResponse, response.getStream());
    }
}

From source file:com.liferay.polls.web.internal.portlet.util.PollsUtil.java

License:Open Source License

public static void saveVote(PortletRequest portletRequest, PortletResponse portletResponse, long questionId) {

    HttpServletRequest request = PortalUtil.getHttpServletRequest(portletRequest);
    HttpServletResponse response = PortalUtil.getHttpServletResponse(portletResponse);

    saveVote(request, response, questionId);
}

From source file:com.liferay.salesforce.portlet.SalesforceContactsPortlet.java

License:Apache License

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

    HttpServletResponse httpServletResponse = PortalUtil.getHttpServletResponse(resourceResponse);
    ThemeDisplay themeDisplay = (ThemeDisplay) resourceRequest.getAttribute(WebKeys.THEME_DISPLAY);
    httpServletResponse.setContentType(ContentTypes.TEXT);

    String requestMethod = ParamUtil.getString(resourceRequest, "type");

    resourceResponse.setContentType(ContentTypes.TEXT_JAVASCRIPT);
    String username = getUsername(resourceRequest);
    try {//  w  w w .  j a  v a 2  s.c  om
        if (themeDisplay.isSignedIn() && (requestMethod != null) && requestMethod.equals(_CONTACTS)
                && username != null) {
            MessageBatch messageBatch = SalesforceContactLocalServiceUtil.getContactsByUserName(
                    PortalUtil.getDefaultCompanyId(), username, Arrays.asList(FIELD_NAMES),
                    PortalUtil.getUserId(resourceRequest));

            httpServletResponse.getWriter().print(MessageBatchConverter.getJSONString(messageBatch));

            httpServletResponse.flushBuffer();
        } else if (themeDisplay.isSignedIn() && (requestMethod != null)
                && requestMethod.equals(_CONTACTS_FOR_ACCOUNT) && username != null) {

            String accountId = resourceRequest.getParameter("accId");
            MessageBatch messageBatch = SalesforceContactLocalServiceUtil.getContactsByAccountId(
                    PortalUtil.getDefaultCompanyId(), accountId, Arrays.asList(FIELD_NAMES),
                    PortalUtil.getUserId(resourceRequest));

            httpServletResponse.getWriter().print(MessageBatchConverter.getJSONString(messageBatch));

            httpServletResponse.flushBuffer();
        } else {
            httpServletResponse.getWriter().print("");
            httpServletResponse.flushBuffer();
        }
    } catch (SystemException e) {
        throw new PortletException("Unable to process request", e);
    }
}

From source file:com.liferay.salesforce.portlet.SalesforceOpportunityPortlet.java

License:Apache License

public void serveResource(ResourceRequest resourceRequest, ResourceResponse resourceResponse)
        throws IOException, PortletException {
    HttpServletResponse response = PortalUtil.getHttpServletResponse(resourceResponse);
    ThemeDisplay themeDisplay = (ThemeDisplay) resourceRequest.getAttribute(WebKeys.THEME_DISPLAY);
    response.setContentType("text");
    String requestMethod = ParamUtil.getString(resourceRequest, "type");

    resourceResponse.setContentType("text/javascript");
    String username = getUsername(resourceRequest);
    try {/*w  w  w .  j  a  v  a2  s .  c o m*/
        if (themeDisplay.isSignedIn() && (requestMethod != null) && requestMethod.equals("opps")
                && username != null) {
            MessageBatch messageBatch = SalesforceOpportunityLocalServiceUtil.getOpportunitiesByUserName(
                    PortalUtil.getDefaultCompanyId(), username, Arrays.asList(FIELD_NAMES),
                    PortalUtil.getUserId(resourceRequest));
            response.getWriter().print(MessageBatchConverter.getJSONString(messageBatch));

            response.flushBuffer();
        } else if (themeDisplay.isSignedIn() && (requestMethod != null)
                && requestMethod.equals("accountDetails") && username != null) {

            String accountName = resourceRequest.getParameter("accountNm");

            MessageBatch messageBatch = SalesforceAccountLocalServiceUtil.getAccountsByName(
                    PortalUtil.getDefaultCompanyId(), accountName, Arrays.asList(DETAIL_FIELD_NAMES),
                    PortalUtil.getUserId(resourceRequest));
            response.getWriter().print(MessageBatchConverter.getPivotedJSONString(messageBatch));
            response.flushBuffer();
        } else {
            response.getWriter().print("");
            response.flushBuffer();
        }
    } catch (SystemException e) {
        e.printStackTrace();
        throw new PortletException("Unable to process request", e);
    }
}

From source file:com.liferay.wiki.web.internal.portlet.action.AutocompletePageTitleMVCResourceCommand.java

License:Open Source License

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

    try {// ww w.  jav a2s .  c om
        JSONArray jsonArray = getJSONArray(resourceRequest, resourceResponse);

        HttpServletResponse response = PortalUtil.getHttpServletResponse(resourceResponse);

        response.setContentType(ContentTypes.APPLICATION_JSON);

        ServletResponseUtil.write(response, jsonArray.toString());
    } catch (Exception e) {
        _log.error(e, e);
    }
}

From source file:com.liferay.wiki.web.internal.portlet.action.EditPageAttachmentsMVCActionCommand.java

License:Open Source License

/**
 * TODO: Remove. This should extend from EditFileEntryAction once it is
 * modularized.//from  w  ww  .  j  av  a  2  s  . c o  m
 */
protected void handleUploadException(PortletConfig portletConfig, ActionRequest actionRequest,
        ActionResponse actionResponse, String cmd, Exception e) throws Exception {

    if (e instanceof AssetCategoryException || e instanceof AssetTagException) {

        SessionErrors.add(actionRequest, e.getClass(), e);
    } else if (e instanceof AntivirusScannerException || e instanceof DuplicateFileEntryException
            || e instanceof DuplicateFolderNameException || e instanceof FileExtensionException
            || e instanceof FileMimeTypeException || e instanceof FileNameException
            || e instanceof FileSizeException || e instanceof LiferayFileItemException
            || e instanceof NoSuchFolderException || e instanceof SourceFileNameException
            || e instanceof StorageFieldRequiredException || e instanceof UploadRequestSizeException) {

        if (!cmd.equals(Constants.ADD_DYNAMIC) && !cmd.equals(Constants.ADD_MULTIPLE)
                && !cmd.equals(Constants.ADD_TEMP)) {

            if (e instanceof AntivirusScannerException) {
                SessionErrors.add(actionRequest, e.getClass(), e);
            } else {
                SessionErrors.add(actionRequest, e.getClass());
            }

            return;
        } else if (cmd.equals(Constants.ADD_TEMP)) {
            hideDefaultErrorMessage(actionRequest);
        }

        if (e instanceof AntivirusScannerException || e instanceof DuplicateFileEntryException
                || e instanceof FileExtensionException || e instanceof FileNameException
                || e instanceof FileSizeException || e instanceof UploadRequestSizeException) {

            HttpServletResponse response = PortalUtil.getHttpServletResponse(actionResponse);

            response.setContentType(ContentTypes.TEXT_HTML);
            response.setStatus(HttpServletResponse.SC_OK);

            String errorMessage = StringPool.BLANK;
            int errorType = 0;

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

            if (e instanceof AntivirusScannerException) {
                AntivirusScannerException ase = (AntivirusScannerException) e;

                errorMessage = themeDisplay.translate(ase.getMessageKey());
                errorType = ServletResponseConstants.SC_FILE_ANTIVIRUS_EXCEPTION;
            }

            if (e instanceof DuplicateFileEntryException) {
                errorMessage = themeDisplay.translate("please-enter-a-unique-document-name");
                errorType = ServletResponseConstants.SC_DUPLICATE_FILE_EXCEPTION;
            } else if (e instanceof FileExtensionException) {
                errorMessage = themeDisplay.translate("please-enter-a-file-with-a-valid-extension-x", StringUtil
                        .merge(getAllowedFileExtensions(portletConfig, actionRequest, actionResponse)));
                errorType = ServletResponseConstants.SC_FILE_EXTENSION_EXCEPTION;
            } else if (e instanceof FileNameException) {
                errorMessage = themeDisplay.translate("please-enter-a-file-with-a-valid-file-name");
                errorType = ServletResponseConstants.SC_FILE_NAME_EXCEPTION;
            } else if (e instanceof FileSizeException) {
                long fileMaxSize = PrefsPropsUtil.getLong(PropsKeys.DL_FILE_MAX_SIZE);

                if (fileMaxSize == 0) {
                    fileMaxSize = PrefsPropsUtil.getLong(PropsKeys.UPLOAD_SERVLET_REQUEST_IMPL_MAX_SIZE);
                }

                errorMessage = themeDisplay.translate(
                        "please-enter-a-file-with-a-valid-file-size-no-larger" + "-than-x",
                        TextFormatter.formatStorageSize(fileMaxSize, themeDisplay.getLocale()));

                errorType = ServletResponseConstants.SC_FILE_SIZE_EXCEPTION;
            }

            JSONObject jsonObject = JSONFactoryUtil.createJSONObject();

            jsonObject.put("message", errorMessage);
            jsonObject.put("status", errorType);

            JSONPortletResponseUtil.writeJSON(actionRequest, actionResponse, jsonObject);
        }

        if (e instanceof AntivirusScannerException) {
            SessionErrors.add(actionRequest, e.getClass(), e);
        } else {
            SessionErrors.add(actionRequest, e.getClass());
        }
    } else if (e instanceof DuplicateLockException || e instanceof InvalidFileVersionException
            || e instanceof NoSuchFileEntryException || e instanceof PrincipalException) {

        if (e instanceof DuplicateLockException) {
            DuplicateLockException dle = (DuplicateLockException) e;

            SessionErrors.add(actionRequest, dle.getClass(), dle.getLock());
        } else {
            SessionErrors.add(actionRequest, e.getClass());
        }

        actionResponse.setRenderParameter("mvcPath", "/html/porltet/document_library/error.jsp");
    } else {
        Throwable cause = e.getCause();

        if (cause instanceof DuplicateFileEntryException) {
            SessionErrors.add(actionRequest, DuplicateFileEntryException.class);
        } else {
            throw e;
        }
    }
}

From source file:com.liferay.wiki.web.internal.portlet.action.ExportPageMVCActionCommand.java

License:Open Source License

@Override
protected void doProcessAction(ActionRequest actionRequest, ActionResponse actionResponse) throws Exception {

    PortletConfig portletConfig = getPortletConfig(actionRequest);

    try {/*from  w w  w . ja v a  2s .c om*/
        long nodeId = ParamUtil.getLong(actionRequest, "nodeId");
        String nodeName = ParamUtil.getString(actionRequest, "nodeName");
        String title = ParamUtil.getString(actionRequest, "title");
        double version = ParamUtil.getDouble(actionRequest, "version");

        String targetExtension = ParamUtil.getString(actionRequest, "targetExtension");

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

        PortletURL viewPageURL = PortletURLFactoryUtil.create(actionRequest, portletConfig.getPortletName(),
                PortletRequest.RENDER_PHASE);

        viewPageURL.setParameter("mvcRenderCommandName", "/wiki/view");
        viewPageURL.setParameter("nodeName", nodeName);
        viewPageURL.setParameter("title", title);
        viewPageURL.setPortletMode(PortletMode.VIEW);
        viewPageURL.setWindowState(WindowState.MAXIMIZED);

        PortletURL editPageURL = PortletURLFactoryUtil.create(actionRequest, portletConfig.getPortletName(),
                PortletRequest.RENDER_PHASE);

        editPageURL.setParameter("mvcRenderCommandName", "/wiki/edit_page");
        editPageURL.setParameter("nodeId", String.valueOf(nodeId));
        editPageURL.setParameter("title", title);
        editPageURL.setPortletMode(PortletMode.VIEW);
        editPageURL.setWindowState(WindowState.MAXIMIZED);

        HttpServletRequest request = PortalUtil.getHttpServletRequest(actionRequest);
        HttpServletResponse response = PortalUtil.getHttpServletResponse(actionResponse);

        getFile(nodeId, title, version, targetExtension, viewPageURL, editPageURL, themeDisplay, request,
                response);

        actionResponse.setRenderParameter("mvcPath", "/null.jsp");
    } catch (Exception e) {
        String host = PrefsPropsUtil.getString(PropsKeys.OPENOFFICE_SERVER_HOST);

        if (Validator.isNotNull(host) && !host.equals(_LOCALHOST_IP) && !host.startsWith(_LOCALHOST)) {

            StringBundler sb = new StringBundler(3);

            sb.append("Conversion using a remote OpenOffice instance is ");
            sb.append("not fully supported. Please use a local instance ");
            sb.append("to prevent any limitations and problems.");

            _log.error(sb.toString());
        }

        PortalUtil.sendError(e, actionRequest, actionResponse);
    }
}

From source file:com.rivetlogic.skype.util.SkypeUtil.java

License:Open Source License

public static void returnJSONObject(PortletResponse response, JSONObject jsonObj) {
    HttpServletResponse servletResponse = PortalUtil.getHttpServletResponse(response);
    servletResponse.setHeader(HttpHeaders.CACHE_CONTROL, HttpHeaders.CACHE_CONTROL_NO_CACHE_VALUE);
    servletResponse.setHeader(HttpHeaders.PRAGMA, HttpHeaders.PRAGMA_NO_CACHE_VALUE);
    servletResponse.setHeader(HttpHeaders.EXPIRES, String.valueOf(Constants.UNDEFINED_ID));
    PrintWriter pw;//from   w w w .ja v a  2 s .c om
    try {
        pw = servletResponse.getWriter();
        pw.write(jsonObj.toString());
        pw.close();
    } catch (IOException e) {
        LOG.error("Error while returning json", e);
    }
}

From source file:com.rivetlogic.todo.util.TodoUtil.java

License:Open Source License

public static void returnJSONObject(PortletResponse response, JSONObject jsonObj) {
    HttpServletResponse servletResponse = PortalUtil.getHttpServletResponse(response);
    PrintWriter pw;/*from www . j  a v a 2  s. co m*/
    try {
        pw = servletResponse.getWriter();
        pw.write(jsonObj.toString());
        pw.close();
    } catch (IOException e) {
        LOG.error("Error while returning json", e);
    }
}

From source file:com.slemarchand.quick.sign.up.web.portlet.QuickSignUpPortlet.java

License:Open Source License

protected void login(ThemeDisplay themeDisplay, ActionRequest actionRequest, ActionResponse actionResponse,
        User user, String password, String redirect) throws Exception {

    HttpServletRequest request = PortalUtil
            .getOriginalServletRequest(PortalUtil.getHttpServletRequest(actionRequest));
    HttpServletResponse response = PortalUtil.getHttpServletResponse(actionResponse);

    String login = getLogin(themeDisplay, actionRequest, user);

    boolean rememberMe = false;

    String authType = themeDisplay.getCompany().getAuthType();

    AuthenticatedSessionManagerUtil.login(request, response, login, password, rememberMe, authType);

    actionResponse.sendRedirect(redirect);
}