本文整理匯總了Java中org.apache.catalina.connector.Response.setStatus方法的典型用法代碼示例。如果您正苦於以下問題:Java Response.setStatus方法的具體用法?Java Response.setStatus怎麽用?Java Response.setStatus使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類org.apache.catalina.connector.Response
的用法示例。
在下文中一共展示了Response.setStatus方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: invoke
import org.apache.catalina.connector.Response; //導入方法依賴的package包/類
@Override
public void invoke (Request request, Response response) throws IOException,
ServletException
{
// valve disabled or previous valve sent an error, return
if (!isEnable() || response.isError())
{
getNext().invoke(request, response);
return;
}
final AccessInformation ai = new AccessInformation();
ai.setConnectionStatus(new PendingConnectionStatus());
// To be sure not to retrieve the same date trough concurrency calls.
synchronized (this)
{
ai.setStartTimestamp(System.nanoTime());
ai.setStartDate (new Date ());
}
try
{
this.doLog(request, response, ai);
}
finally
{
Element cached_element = new Element(UUID.randomUUID(), ai);
getCache().put(cached_element);
try
{
// Log of the pending request command.
if (isUseLogger()) LOGGER.info ("Access " + ai);
getNext().invoke(request, response);
}
catch (Throwable e)
{
response.addHeader("cause-message",
e.getClass().getSimpleName() + " : " + e.getMessage());
//ai.setConnectionStatus(new FailureConnectionStatus(e));
response.setStatus(HttpStatus.SC_INTERNAL_SERVER_ERROR);
//throw e;
}
finally
{
ai.setReponseSize(response.getContentLength());
ai.setWrittenResponseSize(response.getContentWritten());
if (response.getStatus()>=400)
{
String message = RequestUtil.filter(response.getMessage());
if (message==null)
{
// The cause-message has been inserted into the reponse header
// at error handler time. It no message is retrieved in the
// standard response, the cause-message is used.
message = response.getHeader("cause-message");
}
Throwable throwable = null;
if (message != null) throwable = new Throwable(message);
else throwable = (Throwable) request.getAttribute(
RequestDispatcher.ERROR_EXCEPTION);
if (throwable==null) throwable = new Throwable();
ai.setConnectionStatus(new FailureConnectionStatus(throwable));
}
else
ai.setConnectionStatus(new SuccessConnectionStatus());
ai.setEndTimestamp(System.nanoTime());
if ((getPattern()==null) || ai.getRequest().matches(getPattern()))
{
cached_element.updateUpdateStatistics();
if (isUseLogger()) LOGGER.info ("Access " + ai);
}
}
}
}