當前位置: 首頁>>代碼示例>>Java>>正文


Java Response.sendError方法代碼示例

本文整理匯總了Java中org.apache.catalina.connector.Response.sendError方法的典型用法代碼示例。如果您正苦於以下問題:Java Response.sendError方法的具體用法?Java Response.sendError怎麽用?Java Response.sendError使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.apache.catalina.connector.Response的用法示例。


在下文中一共展示了Response.sendError方法的12個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: invoke

import org.apache.catalina.connector.Response; //導入方法依賴的package包/類
/**
 * Select the appropriate child Host to process this request,
 * based on the requested server name.  If no matching Host can
 * be found, return an appropriate HTTP error.
 *
 * @param request Request to be processed
 * @param response Response to be produced
 *
 * @exception IOException if an input/output error occurred
 * @exception ServletException if a servlet error occurred
 */
@Override
public final void invoke(Request request, Response response)
    throws IOException, ServletException {

    // Select the Host to be used for this Request
    Host host = request.getHost();
    if (host == null) {
        response.sendError
            (HttpServletResponse.SC_BAD_REQUEST,
             sm.getString("standardEngine.noHost", 
                          request.getServerName()));
        return;
    }
    if (request.isAsyncSupported()) {
        request.setAsyncSupported(host.getPipeline().isAsyncSupported());
    }

    // Ask this Host to process this request
    host.getPipeline().getFirst().invoke(request, response);

}
 
開發者ID:liaokailin,項目名稱:tomcat7,代碼行數:33,代碼來源:StandardEngineValve.java

示例2: invoke

import org.apache.catalina.connector.Response; //導入方法依賴的package包/類
/**
 * Select the appropriate child Host to process this request,
 * based on the requested server name.  If no matching Host can
 * be found, return an appropriate HTTP error.
 *
 * @param request Request to be processed
 * @param response Response to be produced
 * @param valveContext Valve context used to forward to the next Valve
 *
 * @exception IOException if an input/output error occurred
 * @exception ServletException if a servlet error occurred
 */
public final void invoke(Request request, Response response)
    throws IOException, ServletException {

    // Select the Host to be used for this Request
    Host host = request.getHost();
    if (host == null) {
        response.sendError
            (HttpServletResponse.SC_BAD_REQUEST,
             sm.getString("standardEngine.noHost", 
                          request.getServerName()));
        return;
    }

    // Ask this Host to process this request
    host.getPipeline().getFirst().invoke(request, response);

}
 
開發者ID:lamsfoundation,項目名稱:lams,代碼行數:30,代碼來源:StandardEngineValve.java

示例3: invoke

import org.apache.catalina.connector.Response; //導入方法依賴的package包/類
/**
 * Select the appropriate child Host to process this request, based on the
 * requested server name. If no matching Host can be found, return an
 * appropriate HTTP error.
 *
 * @param request
 *            Request to be processed
 * @param response
 *            Response to be produced
 *
 * @exception IOException
 *                if an input/output error occurred
 * @exception ServletException
 *                if a servlet error occurred
 */
@Override
public final void invoke(Request request, Response response) throws IOException, ServletException {

	// Select the Host to be used for this Request
	Host host = request.getHost();
	if (host == null) {
		response.sendError(HttpServletResponse.SC_BAD_REQUEST,
				sm.getString("standardEngine.noHost", request.getServerName()));
		return;
	}
	if (request.isAsyncSupported()) {
		request.setAsyncSupported(host.getPipeline().isAsyncSupported());
	}

	// Ask this Host to process this request
	host.getPipeline().getFirst().invoke(request, response);

}
 
開發者ID:how2j,項目名稱:lazycat,代碼行數:34,代碼來源:StandardEngineValve.java

示例4: denyRequest

import org.apache.catalina.connector.Response; //導入方法依賴的package包/類
/**
 * Reject the request that was denied by this valve.
 * <p>If <code>invalidAuthenticationWhenDeny</code> is true
 * and the context has <code>preemptiveAuthentication</code>
 * set, set an invalid authorization header to trigger basic auth.
 *
 * @param request The servlet request to be processed
 * @param response The servlet response to be processed
 * @exception IOException if an input/output error occurs
 * @exception ServletException if a servlet error occurs
 */
protected void denyRequest(Request request, Response response)
        throws IOException, ServletException {
    if (invalidAuthenticationWhenDeny) {
        Context context = request.getContext();
        if (context != null && context.getPreemptiveAuthentication()) {
            if (request.getCoyoteRequest().getMimeHeaders().getValue("authorization") == null) {
                request.getCoyoteRequest().getMimeHeaders().addValue("authorization").setString("invalid");
            }
            getNext().invoke(request, response);
            return;
        }
    }
    response.sendError(denyStatus);
}
 
開發者ID:liaokailin,項目名稱:tomcat7,代碼行數:26,代碼來源:RequestFilterValve.java

示例5: invoke

import org.apache.catalina.connector.Response; //導入方法依賴的package包/類
/**
 * Select the appropriate child Wrapper to process this request,
 * based on the specified request URI.  If no matching Wrapper can
 * be found, return an appropriate HTTP error.
 *
 * @param request Request to be processed
 * @param response Response to be produced
 *
 * @exception IOException if an input/output error occurred
 * @exception ServletException if a servlet error occurred
 */
@Override
public final void invoke(Request request, Response response)
    throws IOException, ServletException {

    // Disallow any direct access to resources under WEB-INF or META-INF
    MessageBytes requestPathMB = request.getRequestPathMB();
    if ((requestPathMB.startsWithIgnoreCase("/META-INF/", 0))
            || (requestPathMB.equalsIgnoreCase("/META-INF"))
            || (requestPathMB.startsWithIgnoreCase("/WEB-INF/", 0))
            || (requestPathMB.equalsIgnoreCase("/WEB-INF"))) {
        response.sendError(HttpServletResponse.SC_NOT_FOUND);
        return;
    }

    // Select the Wrapper to be used for this Request
    Wrapper wrapper = request.getWrapper();
    if (wrapper == null || wrapper.isUnavailable()) {
        response.sendError(HttpServletResponse.SC_NOT_FOUND);
        return;
    }

    // Acknowledge the request
    try {
        response.sendAcknowledgement();
    } catch (IOException ioe) {
        container.getLogger().error(sm.getString(
                "standardContextValve.acknowledgeException"), ioe);
        request.setAttribute(RequestDispatcher.ERROR_EXCEPTION, ioe);
        response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
        return;
    }
    
    if (request.isAsyncSupported()) {
        request.setAsyncSupported(wrapper.getPipeline().isAsyncSupported());
    }
    wrapper.getPipeline().getFirst().invoke(request, response);
}
 
開發者ID:liaokailin,項目名稱:tomcat7,代碼行數:49,代碼來源:StandardContextValve.java

示例6: invoke

import org.apache.catalina.connector.Response; //導入方法依賴的package包/類
/**
 * Invoke the next Valve in the sequence. When the invoke returns, check
 * the response state, and output an error report is necessary.
 *
 * @param request The servlet request to be processed
 * @param response The servlet response to be created
 *
 * @exception IOException if an input/output error occurs
 * @exception ServletException if a servlet error occurs
 */
public void invoke(Request request, Response response)
    throws IOException, ServletException {

    // Perform the request
    getNext().invoke(request, response);

    Throwable throwable =
        (Throwable) request.getAttribute(Globals.EXCEPTION_ATTR);

    if (response.isCommitted()) {
        return;
    }

    if (throwable != null) {

        // The response is an error
        response.setError();

        // Reset the response (if possible)
        try {
            response.reset();
        } catch (IllegalStateException e) {
            ;
        }

        response.sendError
            (HttpServletResponse.SC_INTERNAL_SERVER_ERROR);

    }

    response.setSuspended(false);

    try {
        report(request, response, throwable);
    } catch (Throwable tt) {
        ;
    }

}
 
開發者ID:lamsfoundation,項目名稱:lams,代碼行數:50,代碼來源:ErrorReportValve.java

示例7: handleAuthentication

import org.apache.catalina.connector.Response; //導入方法依賴的package包/類
private void handleAuthentication(final Request request, final Response response)
        throws IOException, ServletException {
    if ((request.getMethod().equalsIgnoreCase("GET") ||
        request.getMethod().equals("HEAD")) &&
        allowGetRequests(request.getHost().toString())) {
        // Skip authentication
        setAnonymousRoles(request);
        this.getNext().invoke(request, response);
    } else if (doAuthentication(request)) {
        this.getNext().invoke(request, response);
    } else {
        response.sendError(HttpServletResponse.SC_UNAUTHORIZED, "Token authentication failed.");
    }
}
 
開發者ID:Islandora-CLAW,項目名稱:Syn,代碼行數:15,代碼來源:SynValve.java

示例8: invoke

import org.apache.catalina.connector.Response; //導入方法依賴的package包/類
/**
 * Invoke the next Valve in the sequence. When the invoke returns, check
 * the response state. If the status code is greater than or equal to 400
 * or an uncaught exception was thrown then the error handling will be
 * triggered.
 *
 * @param request The servlet request to be processed
 * @param response The servlet response to be created
 *
 * @exception IOException if an input/output error occurs
 * @exception ServletException if a servlet error occurs
 */
@Override
public void invoke(Request request, Response response) throws IOException, ServletException {

    // Perform the request
    getNext().invoke(request, response);

    if (response.isCommitted()) {
        if (response.setErrorReported()) {
            // Error wasn't previously reported but we can't write an error
            // page because the response has already been committed. Attempt
            // to flush any data that is still to be written to the client.
            try {
                response.flushBuffer();
            } catch (Throwable t) {
                ExceptionUtils.handleThrowable(t);
            }
            // Close immediately to signal to the client that something went
            // wrong
            response.getCoyoteResponse().action(ActionCode.CLOSE_NOW, null);
        }
        return;
    }

    Throwable throwable = (Throwable) request.getAttribute(RequestDispatcher.ERROR_EXCEPTION);

    // If an async request is in progress and is not going to end once this
    // container thread finishes, do not process any error page here.
    if (request.isAsync() && !request.isAsyncCompleting()) {
        return;
    }

    if (throwable != null && !response.isError()) {
        // Make sure that the necessary methods have been called on the
        // response. (It is possible a component may just have set the
        // Throwable. Tomcat won't do that but other components might.)
        // These are safe to call at this point as we know that the response
        // has not been committed.
        response.reset();
        response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
    }

    // One way or another, response.sendError() will have been called before
    // execution reaches this point and suspended the response. Need to
    // reverse that so this valve can write to the response.
    response.setSuspended(false);

    try {
        report(request, response, throwable);
    } catch (Throwable tt) {
        ExceptionUtils.handleThrowable(tt);
    }
}
 
開發者ID:liaokailin,項目名稱:tomcat7,代碼行數:65,代碼來源:ErrorReportValve.java

示例9: process

import org.apache.catalina.connector.Response; //導入方法依賴的package包/類
/**
 * Perform the filtering that has been configured for this Valve, matching
 * against the specified request property.
 *
 * @param property The request property on which to filter
 * @param request The servlet request to be processed
 * @param response The servlet response to be processed
 *
 * @exception IOException if an input/output error occurs
 * @exception ServletException if a servlet error occurs
 */
protected void process(String property,
                       Request request, Response response)
    throws IOException, ServletException {

    // Check the deny patterns, if any
    for (int i = 0; i < denies.length; i++) {
        if (denies[i].matcher(property).matches()) {
            response.sendError(HttpServletResponse.SC_FORBIDDEN);
            return;
        }
    }

    // Check the allow patterns, if any
    for (int i = 0; i < allows.length; i++) {
        if (allows[i].matcher(property).matches()) {
            getNext().invoke(request, response);
            return;
        }
    }

    // Allow if denies specified but not allows
    if ((denies.length > 0) && (allows.length == 0)) {
        getNext().invoke(request, response);
        return;
    }

    // Deny this request
    response.sendError(HttpServletResponse.SC_FORBIDDEN);

}
 
開發者ID:lamsfoundation,項目名稱:lams,代碼行數:42,代碼來源:RequestFilterValve.java

示例10: invoke

import org.apache.catalina.connector.Response; //導入方法依賴的package包/類
/**
 * Select the appropriate child Context to process this request,
 * based on the specified request URI.  If no matching Context can
 * be found, return an appropriate HTTP error.
 *
 * @param request Request to be processed
 * @param response Response to be produced
 * @param valveContext Valve context used to forward to the next Valve
 *
 * @exception IOException if an input/output error occurred
 * @exception ServletException if a servlet error occurred
 */
public final void invoke(Request request, Response response)
    throws IOException, ServletException {

    // Select the Context to be used for this Request
    Context context = request.getContext();
    if (context == null) {
        response.sendError
            (HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
             sm.getString("standardHost.noContext"));
        return;
    }

    // Bind the context CL to the current thread
    if( context.getLoader() != null ) {
        // Not started - it should check for availability first
        // This should eventually move to Engine, it's generic.
        Thread.currentThread().setContextClassLoader
                (context.getLoader().getClassLoader());
    }

    // Ask this Context to process this request
    context.getPipeline().getFirst().invoke(request, response);

    // Access a session (if present) to update last accessed time, based on a
    // strict interpretation of the specification
    if (Globals.STRICT_SERVLET_COMPLIANCE) {
        request.getSession(false);
    }

    // Error page processing
    response.setSuspended(false);

    Throwable t = (Throwable) request.getAttribute(Globals.EXCEPTION_ATTR);

    if (t != null) {
        throwable(request, response, t);
    } else {
        status(request, response);
    }

    // Restore the context classloader
    Thread.currentThread().setContextClassLoader
        (StandardHostValve.class.getClassLoader());

}
 
開發者ID:lamsfoundation,項目名稱:lams,代碼行數:58,代碼來源:StandardHostValve.java

示例11: invoke

import org.apache.catalina.connector.Response; //導入方法依賴的package包/類
/**
 * Invoke the next Valve in the sequence. When the invoke returns, check the
 * response state. If the status code is greater than or equal to 400 or an
 * uncaught exception was thrown then the error handling will be triggered.
 *
 * @param request
 *            The servlet request to be processed
 * @param response
 *            The servlet response to be created
 *
 * @exception IOException
 *                if an input/output error occurs
 * @exception ServletException
 *                if a servlet error occurs
 */
@Override
public void invoke(Request request, Response response) throws IOException, ServletException {

	// Perform the request
	getNext().invoke(request, response);

	if (response.isCommitted()) {
		if (response.setErrorReported()) {
			// Error wasn't previously reported but we can't write an error
			// page because the response has already been committed. Attempt
			// to flush any data that is still to be written to the client.
			try {
				response.flushBuffer();
			} catch (Throwable t) {
				ExceptionUtils.handleThrowable(t);
			}
			// Close immediately to signal to the client that something went
			// wrong
			response.getCoyoteResponse().action(ActionCode.CLOSE_NOW, null);
		}
		return;
	}

	Throwable throwable = (Throwable) request.getAttribute(RequestDispatcher.ERROR_EXCEPTION);

	// If an async request is in progress and is not going to end once this
	// container thread finishes, do not process any error page here.
	if (request.isAsync() && !request.isAsyncCompleting()) {
		return;
	}

	if (throwable != null && !response.isError()) {
		// Make sure that the necessary methods have been called on the
		// response. (It is possible a component may just have set the
		// Throwable. Tomcat won't do that but other components might.)
		// These are safe to call at this point as we know that the response
		// has not been committed.
		response.reset();
		response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
	}

	// One way or another, response.sendError() will have been called before
	// execution reaches this point and suspended the response. Need to
	// reverse that so this valve can write to the response.
	response.setSuspended(false);

	try {
		report(request, response, throwable);
	} catch (Throwable tt) {
		ExceptionUtils.handleThrowable(tt);
	}
}
 
開發者ID:how2j,項目名稱:lazycat,代碼行數:68,代碼來源:ErrorReportValve.java

示例12: denyRequest

import org.apache.catalina.connector.Response; //導入方法依賴的package包/類
/**
 * Reject the request that was denied by this valve.
 * <p>
 * If <code>invalidAuthenticationWhenDeny</code> is true and the context has
 * <code>preemptiveAuthentication</code> set, set an invalid authorization
 * header to trigger basic auth.
 *
 * @param request
 *            The servlet request to be processed
 * @param response
 *            The servlet response to be processed
 * @exception IOException
 *                if an input/output error occurs
 * @exception ServletException
 *                if a servlet error occurs
 */
protected void denyRequest(Request request, Response response) throws IOException, ServletException {
	if (invalidAuthenticationWhenDeny) {
		Context context = request.getContext();
		if (context != null && context.getPreemptiveAuthentication()) {
			if (request.getCoyoteRequest().getMimeHeaders().getValue("authorization") == null) {
				request.getCoyoteRequest().getMimeHeaders().addValue("authorization").setString("invalid");
			}
			getNext().invoke(request, response);
			return;
		}
	}
	response.sendError(denyStatus);
}
 
開發者ID:how2j,項目名稱:lazycat,代碼行數:30,代碼來源:RequestFilterValve.java


注:本文中的org.apache.catalina.connector.Response.sendError方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。