Example usage for com.google.gwt.user.server.rpc RPCServletUtils writeResponse

List of usage examples for com.google.gwt.user.server.rpc RPCServletUtils writeResponse

Introduction

In this page you can find the example usage for com.google.gwt.user.server.rpc RPCServletUtils writeResponse.

Prototype

public static void writeResponse(ServletContext servletContext, HttpServletResponse response,
        String responseContent, boolean gzipResponse) throws IOException 

Source Link

Document

Write the response content into the HttpServletResponse .

Usage

From source file:com.brightedu.server.BrightServlet.java

License:Apache License

private void writeResponse(HttpServletRequest request, HttpServletResponse response, String responsePayload)
        throws IOException {
    boolean gzipEncode = RPCServletUtils.acceptsGzipEncoding(request)
            && shouldCompressResponse(request, response, responsePayload);

    RPCServletUtils.writeResponse(getServletContext(), response, responsePayload, gzipEncode);
}

From source file:com.dotspots.rpcplus.flexiblerpc.FlexibleRemoteServiceServlet.java

License:Apache License

protected void writeResponse(HttpServletRequest request, HttpServletResponse response, String responsePayload)
        throws IOException {
    boolean gzipEncode = RPCServletUtils.acceptsGzipEncoding(request)
            && shouldCompressResponse(request, response, responsePayload);

    RPCServletUtils.writeResponse(getServletContext(), response, responsePayload, gzipEncode);
}

From source file:com.openforevent.gwt.gwtrpc.util.GwtRpcServletUtil.java

License:Apache License

public void writeResponse(ServletContext servletContext, HttpServletRequest request,
        HttpServletResponse response, String responsePayload) throws IOException {

    boolean gzipEncode = RPCServletUtils.acceptsGzipEncoding(request)
            && shouldCompressResponse(request, response, responsePayload);
    gzipEncode = false;//from   w ww .  ja  v a 2  s. c  o m
    RPCServletUtils.writeResponse(servletContext, response, responsePayload, gzipEncode);
}

From source file:de.itsvs.cwtrpc.controller.RemoteServiceControllerServlet.java

License:Apache License

protected void writeResponse(HttpServletRequest request, HttpServletResponse response,
        PreparedRemoteServiceConfig serviceConfig, String payload) throws IOException {
    final boolean gzipResponse;

    gzipResponse = serviceConfig.isResponseCompressionEnabled() && RPCServletUtils.acceptsGzipEncoding(request)
            && RPCServletUtils.exceedsUncompressedContentLengthLimit(payload);

    if (log.isDebugEnabled()) {
        log.debug("Writing response (gzip=" + gzipResponse + ")");
    }/*from   ww w  . j av  a 2s . c o m*/
    addNoCacheResponseHeaders(request, response);
    RPCServletUtils.writeResponse(getServletContext(), response, payload, gzipResponse);
    /*
     * Flush all remaining output to the client (client can continue
     * immediately). Also response will be marked as being committed (status
     * may be required later by a filter).
     */
    response.flushBuffer();
}

From source file:de.itsvs.cwtrpc.security.AbstractRpcFailureHandler.java

License:Apache License

protected void writeExpectedException(HttpServletRequest request, HttpServletResponse response,
        Exception remoteException) throws IOException {
    final RPCRequest rpcRequest;
    final String responsePayload;

    rpcRequest = AbstractRpcAuthenticationProcessingFilter.getRpcRequest(request);
    try {//w w w.  j a  v a2 s . c o  m
        if (rpcRequest != null) {
            /* checked exceptions must be declared by service method */
            responsePayload = RPC.encodeResponseForFailure(rpcRequest.getMethod(), remoteException,
                    rpcRequest.getSerializationPolicy());
        } else {
            log.warn("Could not determine RPC request. Using default serialization.");
            responsePayload = RPC.encodeResponseForFailure(null, remoteException);
        }
    } catch (UnexpectedException e) {
        if (rpcRequest != null) {
            log.error("Exception " + remoteException.getClass().getName() + " is unexpected for method "
                    + rpcRequest.getMethod() + " of declaring class "
                    + rpcRequest.getMethod().getDeclaringClass().getName(), e);
        } else {
            log.error("Exception " + remoteException.getClass().getName() + " is unexpected for unknown method",
                    e);
        }
        writeUnexpectedException(request, response, remoteException);
        return;
    } catch (SerializationException e) {
        log.error("Error while serializing " + remoteException.getClass().getName(), e);
        writeUnexpectedException(request, response, remoteException);
        return;
    }

    if (CwtRpcUtils.getRpcSessionInvalidationPolicy(request).isInvalidateOnExpectedException()) {
        invalidateSession(request);
    }

    response.reset();
    addNoCacheResponseHeaders(request, response);
    RPCServletUtils.writeResponse(getServletContext(), response, responsePayload, false);
    response.flushBuffer();
}

From source file:de.itsvs.cwtrpc.security.AbstractRpcSuccessHandler.java

License:Apache License

protected void sendResponse(HttpServletRequest request, HttpServletResponse response,
        Authentication authentication) throws IOException, ServletException {
    final RPCRequest rpcRequest;
    final String responsePayload;

    rpcRequest = AbstractRpcAuthenticationProcessingFilter.getRpcRequest(request);
    if (rpcRequest == null) {
        throw new CwtRpcException("RPC request has not been stored in request ("
                + AbstractRpcAuthenticationProcessingFilter.class.getName() + " must be used)");
    }/*from   w  w w  .ja  va2s.c o m*/

    try {
        addNoCacheResponseHeaders(request, response);
        responsePayload = RPC.encodeResponseForSuccess(rpcRequest.getMethod(),
                getResponse(request, rpcRequest, authentication), rpcRequest.getSerializationPolicy(),
                rpcRequest.getFlags());
        RPCServletUtils.writeResponse(getServletContext(), response, responsePayload, false);
    } catch (SerializationException e) {
        log.error("Serialization error while processing service request", e);
        if (!response.isCommitted()) {
            RPCServletUtils.writeResponseForUnexpectedFailure(getServletContext(), response, e);
        }
    }
}

From source file:fr.putnami.pwt.core.service.server.service.AbstractCommandService.java

License:Open Source License

@Override
protected void processPost(HttpServletRequest request, HttpServletResponse response) throws Throwable {
    try {// w w  w.  ja va  2s .  co m
        String requestPayload = this.readContent(request);
        RPCRequest rpcRequest = RPC.decodeRequest(requestPayload, getClass(), this);

        String responsePayload = RPC.invokeAndEncodeResponse(this, rpcRequest.getMethod(),
                rpcRequest.getParameters(), rpcRequest.getSerializationPolicy(), rpcRequest.getFlags());

        boolean gzipEncode = RPCServletUtils.acceptsGzipEncoding(request)
                && RPCServletUtils.exceedsUncompressedContentLengthLimit(responsePayload);

        RPCServletUtils.writeResponse(null, response, responsePayload, gzipEncode);
    } catch (Exception e) {
        logger.error("Request processing failed", e);
        throw Throwables.propagate(e);
    }
}

From source file:fr.putnami.pwt.core.service.server.service.BasicCommandService.java

License:Open Source License

@Override
protected void processPost(HttpServletRequest request, HttpServletResponse response) throws Throwable {
    try {/*www.  ja va2  s . c  o m*/
        String requestPayload = this.readContent(request);
        RPCRequest rpcRequest = RPC.decodeRequest(requestPayload, this.getClass(), this);

        String responsePayload = RPC.invokeAndEncodeResponse(this, rpcRequest.getMethod(),
                rpcRequest.getParameters(), rpcRequest.getSerializationPolicy(), rpcRequest.getFlags());

        boolean gzipEncode = RPCServletUtils.acceptsGzipEncoding(request)
                && RPCServletUtils.exceedsUncompressedContentLengthLimit(responsePayload);

        RPCServletUtils.writeResponse(null, response, responsePayload, gzipEncode);
    } catch (Exception e) {
        this.logger.error("Request processing failed", e);
        throw Throwables.propagate(e);
    }
}

From source file:fr.putnami.pwt.plugin.spring.rpc.server.controller.CommandController.java

License:Open Source License

@RequestMapping(value = "/commandService", method = RequestMethod.POST)
public void processPostRpc(HttpServletRequest request, HttpServletResponse response) throws Throwable {
    try {//from   w  w  w  . j  ava  2  s .co m
        String requestPayload = RPCServletUtils.readContentAsGwtRpc(request);
        RPCRequest rpcRequest = RPC.decodeRequest(requestPayload, CommandService.class, this);

        String responsePayload = RPC.invokeAndEncodeResponse(commandService, rpcRequest.getMethod(),
                rpcRequest.getParameters(), rpcRequest.getSerializationPolicy(), rpcRequest.getFlags());

        boolean gzipEncode = RPCServletUtils.acceptsGzipEncoding(request)
                && RPCServletUtils.exceedsUncompressedContentLengthLimit(responsePayload);

        RPCServletUtils.writeResponse(null, response, responsePayload, gzipEncode);
    } catch (Exception e) {
        this.logger.error("Request processing failed", e);
        throw Throwables.propagate(e);
    }
}

From source file:org.atmosphere.gwt.poll.AtmospherePollService.java

License:Apache License

protected static void writeResponse(HttpServletRequest request, HttpServletResponse response,
        ServletContext context, String responsePayload) throws IOException {
    boolean gzipEncode = RPCServletUtils.acceptsGzipEncoding(request)
            && shouldCompressResponse(request, response, responsePayload);

    RPCServletUtils.writeResponse(context, response, responsePayload, gzipEncode);
}