blob: 5d6eebe7f0ba76617465c9cf72e94c91e9611bc6 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_65) on Fri Mar 04 17:58:57 EST 2016 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
WebUtils (Apache Shiro 1.2.4 API)
</TITLE>
<META NAME="date" CONTENT="2016-03-04">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="WebUtils (Apache Shiro 1.2.4 API)";
}
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<HR>
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/WebUtils.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/shiro/web/util/SavedRequest.html" title="class in org.apache.shiro.web.util"><B>PREV CLASS</B></A>&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?org/apache/shiro/web/util/WebUtils.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="WebUtils.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.shiro.web.util</FONT>
<BR>
Class WebUtils</H2>
<PRE>
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.shiro.web.util.WebUtils</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.50"><B>WebUtils</B></A><DT>extends <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></DL>
</PRE>
<P>
Simple utility class for operations used across multiple class hierarchies in the web framework code.
<p/>
Some methods in this class were copied from the Spring Framework so we didn't have to re-invent the wheel,
and in these cases, we have retained all license, copyright and author information.
<P>
<P>
<DL>
<DT><B>Since:</B></DT>
<DD>0.9</DD>
</DL>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#DEFAULT_CHARACTER_ENCODING">DEFAULT_CHARACTER_ENCODING</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default character encoding to use when <code>request.getCharacterEncoding</code>
returns <code>null</code>, according to the Servlet spec.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#FORWARD_CONTEXT_PATH_ATTRIBUTE">FORWARD_CONTEXT_PATH_ATTRIBUTE</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#FORWARD_PATH_INFO_ATTRIBUTE">FORWARD_PATH_INFO_ATTRIBUTE</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#FORWARD_QUERY_STRING_ATTRIBUTE">FORWARD_QUERY_STRING_ATTRIBUTE</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#FORWARD_REQUEST_URI_ATTRIBUTE">FORWARD_REQUEST_URI_ATTRIBUTE</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Standard Servlet 2.4+ spec request attributes for forward URI and paths.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#FORWARD_SERVLET_PATH_ATTRIBUTE">FORWARD_SERVLET_PATH_ATTRIBUTE</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#INCLUDE_CONTEXT_PATH_ATTRIBUTE">INCLUDE_CONTEXT_PATH_ATTRIBUTE</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#INCLUDE_PATH_INFO_ATTRIBUTE">INCLUDE_PATH_INFO_ATTRIBUTE</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#INCLUDE_QUERY_STRING_ATTRIBUTE">INCLUDE_QUERY_STRING_ATTRIBUTE</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#INCLUDE_REQUEST_URI_ATTRIBUTE">INCLUDE_REQUEST_URI_ATTRIBUTE</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Standard Servlet 2.3+ spec request attributes for include URI and paths.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#INCLUDE_SERVLET_PATH_ATTRIBUTE">INCLUDE_SERVLET_PATH_ATTRIBUTE</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#SAVED_REQUEST_KEY">SAVED_REQUEST_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<A HREF="../../../../../org/apache/shiro/session/Session.html" title="interface in org.apache.shiro.session"><CODE>Session</CODE></A> key used to save a request and later restore it, for example when redirecting to a
requested page after login, equal to <code>shiroSavedRequest</code>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#SERVLET_REQUEST_KEY">SERVLET_REQUEST_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#SERVLET_RESPONSE_KEY">SERVLET_RESPONSE_KEY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#WebUtils()">WebUtils</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#_isSessionCreationEnabled(java.lang.Object)">_isSessionCreationEnabled</A></B>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;requestPairSource)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns <code>true</code> if a session is allowed to be created for a subject-associated request, <code>false</code>
otherwise.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#_isSessionCreationEnabled(javax.servlet.ServletRequest)">_isSessionCreationEnabled</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns <code>true</code> if a session is allowed to be created for a subject-associated request, <code>false</code>
otherwise.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#decodeRequestString(javax.servlet.http.HttpServletRequest, java.lang.String)">decodeRequestString</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;source)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Decode the given source string with a URLDecoder.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#determineEncoding(javax.servlet.http.HttpServletRequest)">determineEncoding</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</A>&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Determine the encoding for the given request.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="../../../../../org/apache/shiro/web/util/SavedRequest.html" title="class in org.apache.shiro.web.util">SavedRequest</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#getAndClearSavedRequest(javax.servlet.ServletRequest)">getAndClearSavedRequest</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#getCleanParam(javax.servlet.ServletRequest, java.lang.String)">getCleanParam</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;paramName)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Convenience method that returns a request parameter value, first running it through
<A HREF="../../../../../org/apache/shiro/util/StringUtils.html#clean(java.lang.String)"><CODE>StringUtils.clean(String)</CODE></A>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#getContextPath(javax.servlet.http.HttpServletRequest)">getContextPath</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</A>&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the context path for the given request, detecting an include request
URL if called within a RequestDispatcher include.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#getHttpRequest(java.lang.Object)">getHttpRequest</A></B>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;requestPairSource)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletResponse.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletResponse</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#getHttpResponse(java.lang.Object)">getHttpResponse</A></B>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;requestPairSource)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#getPathWithinApplication(javax.servlet.http.HttpServletRequest)">getPathWithinApplication</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</A>&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the path within the web application for the given request.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#getRequest(java.lang.Object)">getRequest</A></B>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;requestPairSource)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#getRequestUri(javax.servlet.http.HttpServletRequest)">getRequestUri</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</A>&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the request URI for the given request, detecting an include request
URL if called within a RequestDispatcher include.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="../../../../../org/apache/shiro/web/env/WebEnvironment.html" title="interface in org.apache.shiro.web.env">WebEnvironment</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#getRequiredWebEnvironment(javax.servlet.ServletContext)">getRequiredWebEnvironment</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletContext.html?is-external=true" title="class or interface in javax.servlet">ServletContext</A>&nbsp;sc)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Find the Shiro <A HREF="../../../../../org/apache/shiro/web/env/WebEnvironment.html" title="interface in org.apache.shiro.web.env"><CODE>WebEnvironment</CODE></A> for this web application, which is typically loaded via the
<A HREF="../../../../../org/apache/shiro/web/env/EnvironmentLoaderListener.html" title="class in org.apache.shiro.web.env"><CODE>EnvironmentLoaderListener</CODE></A>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletResponse.html?is-external=true" title="class or interface in javax.servlet">ServletResponse</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#getResponse(java.lang.Object)">getResponse</A></B>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;requestPairSource)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="../../../../../org/apache/shiro/web/util/SavedRequest.html" title="class in org.apache.shiro.web.util">SavedRequest</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#getSavedRequest(javax.servlet.ServletRequest)">getSavedRequest</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="../../../../../org/apache/shiro/web/env/WebEnvironment.html" title="interface in org.apache.shiro.web.env">WebEnvironment</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#getWebEnvironment(javax.servlet.ServletContext)">getWebEnvironment</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletContext.html?is-external=true" title="class or interface in javax.servlet">ServletContext</A>&nbsp;sc)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Find the Shiro <A HREF="../../../../../org/apache/shiro/web/env/WebEnvironment.html" title="interface in org.apache.shiro.web.env"><CODE>WebEnvironment</CODE></A> for this web application, which is typically loaded via
<A HREF="../../../../../org/apache/shiro/web/env/EnvironmentLoaderListener.html" title="class in org.apache.shiro.web.env"><CODE>EnvironmentLoaderListener</CODE></A>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="../../../../../org/apache/shiro/web/env/WebEnvironment.html" title="interface in org.apache.shiro.web.env">WebEnvironment</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#getWebEnvironment(javax.servlet.ServletContext, java.lang.String)">getWebEnvironment</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletContext.html?is-external=true" title="class or interface in javax.servlet">ServletContext</A>&nbsp;sc,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;attrName)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Find the Shiro <A HREF="../../../../../org/apache/shiro/web/env/WebEnvironment.html" title="interface in org.apache.shiro.web.env"><CODE>WebEnvironment</CODE></A> for this web application.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#isHttp(java.lang.Object)">isHttp</A></B>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;requestPairSource)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#issueRedirect(javax.servlet.ServletRequest, javax.servlet.ServletResponse, java.lang.String)">issueRedirect</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletResponse.html?is-external=true" title="class or interface in javax.servlet">ServletResponse</A>&nbsp;response,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;url)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Redirects the current request to a new URL based on the given parameters and default values
for unspecified parameters.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#issueRedirect(javax.servlet.ServletRequest, javax.servlet.ServletResponse, java.lang.String, java.util.Map)">issueRedirect</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletResponse.html?is-external=true" title="class or interface in javax.servlet">ServletResponse</A>&nbsp;response,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;url,
<A HREF="http://java.sun.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</A>&nbsp;queryParams)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Redirects the current request to a new URL based on the given parameters and default values
for unspecified parameters.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#issueRedirect(javax.servlet.ServletRequest, javax.servlet.ServletResponse, java.lang.String, java.util.Map, boolean)">issueRedirect</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletResponse.html?is-external=true" title="class or interface in javax.servlet">ServletResponse</A>&nbsp;response,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;url,
<A HREF="http://java.sun.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</A>&nbsp;queryParams,
boolean&nbsp;contextRelative)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Redirects the current request to a new URL based on the given parameters and default values
for unspecified parameters.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#issueRedirect(javax.servlet.ServletRequest, javax.servlet.ServletResponse, java.lang.String, java.util.Map, boolean, boolean)">issueRedirect</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletResponse.html?is-external=true" title="class or interface in javax.servlet">ServletResponse</A>&nbsp;response,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;url,
<A HREF="http://java.sun.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</A>&nbsp;queryParams,
boolean&nbsp;contextRelative,
boolean&nbsp;http10Compatible)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Redirects the current request to a new URL based on the given parameters.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#isTrue(javax.servlet.ServletRequest, java.lang.String)">isTrue</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;paramName)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Checks to see if a request param is considered true using a loose matching strategy for
general values that indicate that something is true or enabled, etc.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#isWeb(java.lang.Object)">isWeb</A></B>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;requestPairSource)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#normalize(java.lang.String)">normalize</A></B>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;path)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Normalize a relative URI path that may have relative values ("/./",
"/../", and so on ) it it.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#redirectToSavedRequest(javax.servlet.ServletRequest, javax.servlet.ServletResponse, java.lang.String)">redirectToSavedRequest</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletResponse.html?is-external=true" title="class or interface in javax.servlet">ServletResponse</A>&nbsp;response,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;fallbackUrl)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Redirects the to the request url from a previously
<A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#saveRequest(javax.servlet.ServletRequest)"><CODE>saved</CODE></A> request, or if there is no saved request, redirects the
end user to the specified <code>fallbackUrl</code>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#saveRequest(javax.servlet.ServletRequest)">saveRequest</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#toHttp(javax.servlet.ServletRequest)">toHttp</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A convenience method that merely casts the incoming <code>ServletRequest</code> to an
<code>HttpServletRequest</code>:
<p/>
<code>return (HttpServletRequest)request;</code>
<p/>
Logic could be changed in the future for logging or throwing an meaningful exception in
non HTTP request environments (e.g.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletResponse.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletResponse</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#toHttp(javax.servlet.ServletResponse)">toHttp</A></B>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletResponse.html?is-external=true" title="class or interface in javax.servlet">ServletResponse</A>&nbsp;response)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A convenience method that merely casts the incoming <code>ServletResponse</code> to an
<code>HttpServletResponse</code>:
<p/>
<code>return (HttpServletResponse)response;</code>
<p/>
Logic could be changed in the future for logging or throwing an meaningful exception in
non HTTP request environments (e.g.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="SERVLET_REQUEST_KEY"><!-- --></A><H3>
SERVLET_REQUEST_KEY</H3>
<PRE>
public static final <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.56"><B>SERVLET_REQUEST_KEY</B></A></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="SERVLET_RESPONSE_KEY"><!-- --></A><H3>
SERVLET_RESPONSE_KEY</H3>
<PRE>
public static final <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.57"><B>SERVLET_RESPONSE_KEY</B></A></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="SAVED_REQUEST_KEY"><!-- --></A><H3>
SAVED_REQUEST_KEY</H3>
<PRE>
public static final <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.63"><B>SAVED_REQUEST_KEY</B></A></PRE>
<DL>
<DD><A HREF="../../../../../org/apache/shiro/session/Session.html" title="interface in org.apache.shiro.session"><CODE>Session</CODE></A> key used to save a request and later restore it, for example when redirecting to a
requested page after login, equal to <code>shiroSavedRequest</code>.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.shiro.web.util.WebUtils.SAVED_REQUEST_KEY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="INCLUDE_REQUEST_URI_ATTRIBUTE"><!-- --></A><H3>
INCLUDE_REQUEST_URI_ATTRIBUTE</H3>
<PRE>
public static final <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.70"><B>INCLUDE_REQUEST_URI_ATTRIBUTE</B></A></PRE>
<DL>
<DD>Standard Servlet 2.3+ spec request attributes for include URI and paths.
<p>If included via a RequestDispatcher, the current resource will see the
originating request. Its own URI and paths are exposed as request attributes.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.shiro.web.util.WebUtils.INCLUDE_REQUEST_URI_ATTRIBUTE">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="INCLUDE_CONTEXT_PATH_ATTRIBUTE"><!-- --></A><H3>
INCLUDE_CONTEXT_PATH_ATTRIBUTE</H3>
<PRE>
public static final <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.71"><B>INCLUDE_CONTEXT_PATH_ATTRIBUTE</B></A></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.shiro.web.util.WebUtils.INCLUDE_CONTEXT_PATH_ATTRIBUTE">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="INCLUDE_SERVLET_PATH_ATTRIBUTE"><!-- --></A><H3>
INCLUDE_SERVLET_PATH_ATTRIBUTE</H3>
<PRE>
public static final <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.72"><B>INCLUDE_SERVLET_PATH_ATTRIBUTE</B></A></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.shiro.web.util.WebUtils.INCLUDE_SERVLET_PATH_ATTRIBUTE">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="INCLUDE_PATH_INFO_ATTRIBUTE"><!-- --></A><H3>
INCLUDE_PATH_INFO_ATTRIBUTE</H3>
<PRE>
public static final <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.73"><B>INCLUDE_PATH_INFO_ATTRIBUTE</B></A></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.shiro.web.util.WebUtils.INCLUDE_PATH_INFO_ATTRIBUTE">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="INCLUDE_QUERY_STRING_ATTRIBUTE"><!-- --></A><H3>
INCLUDE_QUERY_STRING_ATTRIBUTE</H3>
<PRE>
public static final <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.74"><B>INCLUDE_QUERY_STRING_ATTRIBUTE</B></A></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.shiro.web.util.WebUtils.INCLUDE_QUERY_STRING_ATTRIBUTE">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="FORWARD_REQUEST_URI_ATTRIBUTE"><!-- --></A><H3>
FORWARD_REQUEST_URI_ATTRIBUTE</H3>
<PRE>
public static final <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.81"><B>FORWARD_REQUEST_URI_ATTRIBUTE</B></A></PRE>
<DL>
<DD>Standard Servlet 2.4+ spec request attributes for forward URI and paths.
<p>If forwarded to via a RequestDispatcher, the current resource will see its
own URI and paths. The originating URI and paths are exposed as request attributes.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.shiro.web.util.WebUtils.FORWARD_REQUEST_URI_ATTRIBUTE">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="FORWARD_CONTEXT_PATH_ATTRIBUTE"><!-- --></A><H3>
FORWARD_CONTEXT_PATH_ATTRIBUTE</H3>
<PRE>
public static final <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.82"><B>FORWARD_CONTEXT_PATH_ATTRIBUTE</B></A></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.shiro.web.util.WebUtils.FORWARD_CONTEXT_PATH_ATTRIBUTE">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="FORWARD_SERVLET_PATH_ATTRIBUTE"><!-- --></A><H3>
FORWARD_SERVLET_PATH_ATTRIBUTE</H3>
<PRE>
public static final <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.83"><B>FORWARD_SERVLET_PATH_ATTRIBUTE</B></A></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.shiro.web.util.WebUtils.FORWARD_SERVLET_PATH_ATTRIBUTE">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="FORWARD_PATH_INFO_ATTRIBUTE"><!-- --></A><H3>
FORWARD_PATH_INFO_ATTRIBUTE</H3>
<PRE>
public static final <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.84"><B>FORWARD_PATH_INFO_ATTRIBUTE</B></A></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.shiro.web.util.WebUtils.FORWARD_PATH_INFO_ATTRIBUTE">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="FORWARD_QUERY_STRING_ATTRIBUTE"><!-- --></A><H3>
FORWARD_QUERY_STRING_ATTRIBUTE</H3>
<PRE>
public static final <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.85"><B>FORWARD_QUERY_STRING_ATTRIBUTE</B></A></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../constant-values.html#org.apache.shiro.web.util.WebUtils.FORWARD_QUERY_STRING_ATTRIBUTE">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="DEFAULT_CHARACTER_ENCODING"><!-- --></A><H3>
DEFAULT_CHARACTER_ENCODING</H3>
<PRE>
public static final <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.93"><B>DEFAULT_CHARACTER_ENCODING</B></A></PRE>
<DL>
<DD>Default character encoding to use when <code>request.getCharacterEncoding</code>
returns <code>null</code>, according to the Servlet spec.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true#getCharacterEncoding()" title="class or interface in javax.servlet"><CODE>ServletRequest.getCharacterEncoding()</CODE></A>,
<A HREF="../../../../../constant-values.html#org.apache.shiro.web.util.WebUtils.DEFAULT_CHARACTER_ENCODING">Constant Field Values</A></DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="WebUtils()"><!-- --></A><H3>
WebUtils</H3>
<PRE>
public <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.50"><B>WebUtils</B></A>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="getPathWithinApplication(javax.servlet.http.HttpServletRequest)"><!-- --></A><H3>
getPathWithinApplication</H3>
<PRE>
public static <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.110"><B>getPathWithinApplication</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</A>&nbsp;request)</PRE>
<DL>
<DD>Return the path within the web application for the given request.
Detects include request URL if called within a RequestDispatcher include.
<p/>
For example, for a request to URL
<p/>
<code>http://www.somehost.com/myapp/my/url.jsp</code>,
<p/>
for an application deployed to <code>/mayapp</code> (the application's context path), this method would return
<p/>
<code>/my/url.jsp</code>.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - current HTTP request
<DT><B>Returns:</B><DD>the path within the web application</DL>
</DD>
</DL>
<HR>
<A NAME="getRequestUri(javax.servlet.http.HttpServletRequest)"><!-- --></A><H3>
getRequestUri</H3>
<PRE>
public static <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.135"><B>getRequestUri</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</A>&nbsp;request)</PRE>
<DL>
<DD>Return the request URI for the given request, detecting an include request
URL if called within a RequestDispatcher include.
<p>As the value returned by <code>request.getRequestURI()</code> is <i>not</i>
decoded by the servlet container, this method will decode it.
<p>The URI that the web container resolves <i>should</i> be correct, but some
containers like JBoss/Jetty incorrectly include ";" strings like ";jsessionid"
in the URI. This method cuts off such incorrect appendices.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - current HTTP request
<DT><B>Returns:</B><DD>the request URI</DL>
</DD>
</DL>
<HR>
<A NAME="normalize(java.lang.String)"><!-- --></A><H3>
normalize</H3>
<PRE>
public static <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.154"><B>normalize</B></A>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;path)</PRE>
<DL>
<DD>Normalize a relative URI path that may have relative values ("/./",
"/../", and so on ) it it. <strong>WARNING</strong> - This method is
useful only for normalizing application-generated paths. It does not
try to perform security checks for malicious input.
Normalize operations were was happily taken from org.apache.catalina.util.RequestUtil in
Tomcat trunk, r939305
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>path</CODE> - Relative path to be normalized
<DT><B>Returns:</B><DD>normalized path</DL>
</DD>
</DL>
<HR>
<A NAME="getContextPath(javax.servlet.http.HttpServletRequest)"><!-- --></A><H3>
getContextPath</H3>
<PRE>
public static <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.246"><B>getContextPath</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</A>&nbsp;request)</PRE>
<DL>
<DD>Return the context path for the given request, detecting an include request
URL if called within a RequestDispatcher include.
<p>As the value returned by <code>request.getContextPath()</code> is <i>not</i>
decoded by the servlet container, this method will decode it.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - current HTTP request
<DT><B>Returns:</B><DD>the context path</DL>
</DD>
</DL>
<HR>
<A NAME="getRequiredWebEnvironment(javax.servlet.ServletContext)"><!-- --></A><H3>
getRequiredWebEnvironment</H3>
<PRE>
public static <A HREF="../../../../../org/apache/shiro/web/env/WebEnvironment.html" title="interface in org.apache.shiro.web.env">WebEnvironment</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.271"><B>getRequiredWebEnvironment</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletContext.html?is-external=true" title="class or interface in javax.servlet">ServletContext</A>&nbsp;sc)
throws <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</A></PRE>
<DL>
<DD>Find the Shiro <A HREF="../../../../../org/apache/shiro/web/env/WebEnvironment.html" title="interface in org.apache.shiro.web.env"><CODE>WebEnvironment</CODE></A> for this web application, which is typically loaded via the
<A HREF="../../../../../org/apache/shiro/web/env/EnvironmentLoaderListener.html" title="class in org.apache.shiro.web.env"><CODE>EnvironmentLoaderListener</CODE></A>.
<p/>
This implementation rethrows an exception that happened on environment startup to differentiate between a failed
environment startup and no environment at all.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>sc</CODE> - ServletContext to find the web application context for
<DT><B>Returns:</B><DD>the root WebApplicationContext for this web app
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</A></CODE> - if the root WebApplicationContext could not be found<DT><B>Since:</B></DT>
<DD>1.2</DD>
<DT><B>See Also:</B><DD><A HREF="../../../../../org/apache/shiro/web/env/EnvironmentLoader.html#ENVIRONMENT_ATTRIBUTE_KEY"><CODE>EnvironmentLoader.ENVIRONMENT_ATTRIBUTE_KEY</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="getWebEnvironment(javax.servlet.ServletContext)"><!-- --></A><H3>
getWebEnvironment</H3>
<PRE>
public static <A HREF="../../../../../org/apache/shiro/web/env/WebEnvironment.html" title="interface in org.apache.shiro.web.env">WebEnvironment</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.293"><B>getWebEnvironment</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletContext.html?is-external=true" title="class or interface in javax.servlet">ServletContext</A>&nbsp;sc)</PRE>
<DL>
<DD>Find the Shiro <A HREF="../../../../../org/apache/shiro/web/env/WebEnvironment.html" title="interface in org.apache.shiro.web.env"><CODE>WebEnvironment</CODE></A> for this web application, which is typically loaded via
<A HREF="../../../../../org/apache/shiro/web/env/EnvironmentLoaderListener.html" title="class in org.apache.shiro.web.env"><CODE>EnvironmentLoaderListener</CODE></A>.
<p/>
This implementation rethrows an exception that happened on environment startup to differentiate between a failed
environment startup and no environment at all.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>sc</CODE> - ServletContext to find the web application context for
<DT><B>Returns:</B><DD>the root WebApplicationContext for this web app, or <code>null</code> if none<DT><B>Since:</B></DT>
<DD>1.2</DD>
<DT><B>See Also:</B><DD><A HREF="../../../../../org/apache/shiro/web/env/EnvironmentLoader.html#ENVIRONMENT_ATTRIBUTE_KEY"><CODE>EnvironmentLoader.ENVIRONMENT_ATTRIBUTE_KEY</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="getWebEnvironment(javax.servlet.ServletContext, java.lang.String)"><!-- --></A><H3>
getWebEnvironment</H3>
<PRE>
public static <A HREF="../../../../../org/apache/shiro/web/env/WebEnvironment.html" title="interface in org.apache.shiro.web.env">WebEnvironment</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.305"><B>getWebEnvironment</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletContext.html?is-external=true" title="class or interface in javax.servlet">ServletContext</A>&nbsp;sc,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;attrName)</PRE>
<DL>
<DD>Find the Shiro <A HREF="../../../../../org/apache/shiro/web/env/WebEnvironment.html" title="interface in org.apache.shiro.web.env"><CODE>WebEnvironment</CODE></A> for this web application.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>sc</CODE> - ServletContext to find the web application context for<DD><CODE>attrName</CODE> - the name of the ServletContext attribute to look for
<DT><B>Returns:</B><DD>the desired WebEnvironment for this web app, or <code>null</code> if none<DT><B>Since:</B></DT>
<DD>1.2</DD>
</DL>
</DD>
</DL>
<HR>
<A NAME="decodeRequestString(javax.servlet.http.HttpServletRequest, java.lang.String)"><!-- --></A><H3>
decodeRequestString</H3>
<PRE>
public static <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.343"><B>decodeRequestString</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;source)</PRE>
<DL>
<DD>Decode the given source string with a URLDecoder. The encoding will be taken
from the request, falling back to the default "ISO-8859-1".
<p>The default implementation uses <code>URLDecoder.decode(input, enc)</code>.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - current HTTP request<DD><CODE>source</CODE> - the String to decode
<DT><B>Returns:</B><DD>the decoded String<DT><B>See Also:</B><DD><A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#DEFAULT_CHARACTER_ENCODING"><CODE>DEFAULT_CHARACTER_ENCODING</CODE></A>,
<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true#getCharacterEncoding()" title="class or interface in javax.servlet"><CODE>ServletRequest.getCharacterEncoding()</CODE></A>,
<A HREF="http://java.sun.com/javase/6/docs/api/java/net/URLDecoder.html?is-external=true#decode(java.lang.String, java.lang.String)" title="class or interface in java.net"><CODE>URLDecoder.decode(String, String)</CODE></A>,
<A HREF="http://java.sun.com/javase/6/docs/api/java/net/URLDecoder.html?is-external=true#decode(java.lang.String)" title="class or interface in java.net"><CODE>URLDecoder.decode(String)</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="determineEncoding(javax.servlet.http.HttpServletRequest)"><!-- --></A><H3>
determineEncoding</H3>
<PRE>
protected static <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.367"><B>determineEncoding</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</A>&nbsp;request)</PRE>
<DL>
<DD>Determine the encoding for the given request.
Can be overridden in subclasses.
<p>The default implementation checks the request's
<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true#getCharacterEncoding()" title="class or interface in javax.servlet"><CODE>character encoding</CODE></A>, and if that
<code>null</code>, falls back to the <A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#DEFAULT_CHARACTER_ENCODING"><CODE>DEFAULT_CHARACTER_ENCODING</CODE></A>.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - current HTTP request
<DT><B>Returns:</B><DD>the encoding for the request (never <code>null</code>)<DT><B>See Also:</B><DD><A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true#getCharacterEncoding()" title="class or interface in javax.servlet"><CODE>ServletRequest.getCharacterEncoding()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="isWeb(java.lang.Object)"><!-- --></A><H3>
isWeb</H3>
<PRE>
public static boolean <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.389"><B>isWeb</B></A>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;requestPairSource)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="isHttp(java.lang.Object)"><!-- --></A><H3>
isHttp</H3>
<PRE>
public static boolean <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.393"><B>isHttp</B></A>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;requestPairSource)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getRequest(java.lang.Object)"><!-- --></A><H3>
getRequest</H3>
<PRE>
public static <A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.397"><B>getRequest</B></A>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;requestPairSource)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getResponse(java.lang.Object)"><!-- --></A><H3>
getResponse</H3>
<PRE>
public static <A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletResponse.html?is-external=true" title="class or interface in javax.servlet">ServletResponse</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.404"><B>getResponse</B></A>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;requestPairSource)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getHttpRequest(java.lang.Object)"><!-- --></A><H3>
getHttpRequest</H3>
<PRE>
public static <A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.411"><B>getHttpRequest</B></A>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;requestPairSource)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getHttpResponse(java.lang.Object)"><!-- --></A><H3>
getHttpResponse</H3>
<PRE>
public static <A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletResponse.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletResponse</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.419"><B>getHttpResponse</B></A>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;requestPairSource)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="_isSessionCreationEnabled(java.lang.Object)"><!-- --></A><H3>
_isSessionCreationEnabled</H3>
<PRE>
public static boolean <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.451"><B>_isSessionCreationEnabled</B></A>(<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A>&nbsp;requestPairSource)</PRE>
<DL>
<DD>Returns <code>true</code> if a session is allowed to be created for a subject-associated request, <code>false</code>
otherwise.
<p/>
<b>This method exists for Shiro's internal framework needs and should never be called by Shiro end-users. It
could be changed/removed at any time.</b>
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>requestPairSource</CODE> - a <A HREF="../../../../../org/apache/shiro/web/util/RequestPairSource.html" title="interface in org.apache.shiro.web.util"><CODE>RequestPairSource</CODE></A> instance, almost always a
<A HREF="../../../../../org/apache/shiro/web/subject/WebSubject.html" title="interface in org.apache.shiro.web.subject"><CODE>WebSubject</CODE></A> instance.
<DT><B>Returns:</B><DD><code>true</code> if a session is allowed to be created for a subject-associated request, <code>false</code>
otherwise.</DL>
</DD>
</DL>
<HR>
<A NAME="_isSessionCreationEnabled(javax.servlet.ServletRequest)"><!-- --></A><H3>
_isSessionCreationEnabled</H3>
<PRE>
public static boolean <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.470"><B>_isSessionCreationEnabled</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request)</PRE>
<DL>
<DD>Returns <code>true</code> if a session is allowed to be created for a subject-associated request, <code>false</code>
otherwise.
<p/>
<b>This method exists for Shiro's internal framework needs and should never be called by Shiro end-users. It
could be changed/removed at any time.</b>
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - incoming servlet request.
<DT><B>Returns:</B><DD><code>true</code> if a session is allowed to be created for a subject-associated request, <code>false</code>
otherwise.</DL>
</DD>
</DL>
<HR>
<A NAME="toHttp(javax.servlet.ServletRequest)"><!-- --></A><H3>
toHttp</H3>
<PRE>
public static <A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.492"><B>toHttp</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request)</PRE>
<DL>
<DD>A convenience method that merely casts the incoming <code>ServletRequest</code> to an
<code>HttpServletRequest</code>:
<p/>
<code>return (HttpServletRequest)request;</code>
<p/>
Logic could be changed in the future for logging or throwing an meaningful exception in
non HTTP request environments (e.g. Portlet API).
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - the incoming ServletRequest
<DT><B>Returns:</B><DD>the <code>request</code> argument casted to an <code>HttpServletRequest</code>.</DL>
</DD>
</DL>
<HR>
<A NAME="toHttp(javax.servlet.ServletResponse)"><!-- --></A><H3>
toHttp</H3>
<PRE>
public static <A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/http/HttpServletResponse.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletResponse</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.508"><B>toHttp</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletResponse.html?is-external=true" title="class or interface in javax.servlet">ServletResponse</A>&nbsp;response)</PRE>
<DL>
<DD>A convenience method that merely casts the incoming <code>ServletResponse</code> to an
<code>HttpServletResponse</code>:
<p/>
<code>return (HttpServletResponse)response;</code>
<p/>
Logic could be changed in the future for logging or throwing an meaningful exception in
non HTTP request environments (e.g. Portlet API).
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>response</CODE> - the outgoing ServletResponse
<DT><B>Returns:</B><DD>the <code>response</code> argument casted to an <code>HttpServletResponse</code>.</DL>
</DD>
</DL>
<HR>
<A NAME="issueRedirect(javax.servlet.ServletRequest, javax.servlet.ServletResponse, java.lang.String, java.util.Map, boolean, boolean)"><!-- --></A><H3>
issueRedirect</H3>
<PRE>
public static void <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.523"><B>issueRedirect</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletResponse.html?is-external=true" title="class or interface in javax.servlet">ServletResponse</A>&nbsp;response,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;url,
<A HREF="http://java.sun.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</A>&nbsp;queryParams,
boolean&nbsp;contextRelative,
boolean&nbsp;http10Compatible)
throws <A HREF="http://java.sun.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</A></PRE>
<DL>
<DD>Redirects the current request to a new URL based on the given parameters.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - the servlet request.<DD><CODE>response</CODE> - the servlet response.<DD><CODE>url</CODE> - the URL to redirect the user to.<DD><CODE>queryParams</CODE> - a map of parameters that should be set as request parameters for the new request.<DD><CODE>contextRelative</CODE> - true if the URL is relative to the servlet context path, or false if the URL is absolute.<DD><CODE>http10Compatible</CODE> - whether to stay compatible with HTTP 1.0 clients.
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</A></CODE> - if thrown by response methods.</DL>
</DD>
</DL>
<HR>
<A NAME="issueRedirect(javax.servlet.ServletRequest, javax.servlet.ServletResponse, java.lang.String)"><!-- --></A><H3>
issueRedirect</H3>
<PRE>
public static void <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.537"><B>issueRedirect</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletResponse.html?is-external=true" title="class or interface in javax.servlet">ServletResponse</A>&nbsp;response,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;url)
throws <A HREF="http://java.sun.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</A></PRE>
<DL>
<DD>Redirects the current request to a new URL based on the given parameters and default values
for unspecified parameters.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - the servlet request.<DD><CODE>response</CODE> - the servlet response.<DD><CODE>url</CODE> - the URL to redirect the user to.
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</A></CODE> - if thrown by response methods.</DL>
</DD>
</DL>
<HR>
<A NAME="issueRedirect(javax.servlet.ServletRequest, javax.servlet.ServletResponse, java.lang.String, java.util.Map)"><!-- --></A><H3>
issueRedirect</H3>
<PRE>
public static void <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.551"><B>issueRedirect</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletResponse.html?is-external=true" title="class or interface in javax.servlet">ServletResponse</A>&nbsp;response,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;url,
<A HREF="http://java.sun.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</A>&nbsp;queryParams)
throws <A HREF="http://java.sun.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</A></PRE>
<DL>
<DD>Redirects the current request to a new URL based on the given parameters and default values
for unspecified parameters.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - the servlet request.<DD><CODE>response</CODE> - the servlet response.<DD><CODE>url</CODE> - the URL to redirect the user to.<DD><CODE>queryParams</CODE> - a map of parameters that should be set as request parameters for the new request.
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</A></CODE> - if thrown by response methods.</DL>
</DD>
</DL>
<HR>
<A NAME="issueRedirect(javax.servlet.ServletRequest, javax.servlet.ServletResponse, java.lang.String, java.util.Map, boolean)"><!-- --></A><H3>
issueRedirect</H3>
<PRE>
public static void <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.566"><B>issueRedirect</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletResponse.html?is-external=true" title="class or interface in javax.servlet">ServletResponse</A>&nbsp;response,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;url,
<A HREF="http://java.sun.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</A>&nbsp;queryParams,
boolean&nbsp;contextRelative)
throws <A HREF="http://java.sun.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</A></PRE>
<DL>
<DD>Redirects the current request to a new URL based on the given parameters and default values
for unspecified parameters.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - the servlet request.<DD><CODE>response</CODE> - the servlet response.<DD><CODE>url</CODE> - the URL to redirect the user to.<DD><CODE>queryParams</CODE> - a map of parameters that should be set as request parameters for the new request.<DD><CODE>contextRelative</CODE> - true if the URL is relative to the servlet context path, or false if the URL is absolute.
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</A></CODE> - if thrown by response methods.</DL>
</DD>
</DL>
<HR>
<A NAME="isTrue(javax.servlet.ServletRequest, java.lang.String)"><!-- --></A><H3>
isTrue</H3>
<PRE>
public static boolean <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.580"><B>isTrue</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;paramName)</PRE>
<DL>
<DD><p>Checks to see if a request param is considered true using a loose matching strategy for
general values that indicate that something is true or enabled, etc.</p>
<p/>
<p>Values that are considered "true" include (case-insensitive): true, t, 1, enabled, y, yes, on.</p>
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - the servlet request<DD><CODE>paramName</CODE> - @return true if the param value is considered true or false if it isn't.
<DT><B>Returns:</B><DD>true if the given parameter is considered "true" - false otherwise.</DL>
</DD>
</DL>
<HR>
<A NAME="getCleanParam(javax.servlet.ServletRequest, java.lang.String)"><!-- --></A><H3>
getCleanParam</H3>
<PRE>
public static <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.600"><B>getCleanParam</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;paramName)</PRE>
<DL>
<DD>Convenience method that returns a request parameter value, first running it through
<A HREF="../../../../../org/apache/shiro/util/StringUtils.html#clean(java.lang.String)"><CODE>StringUtils.clean(String)</CODE></A>.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - the servlet request.<DD><CODE>paramName</CODE> - the parameter name.
<DT><B>Returns:</B><DD>the clean param value, or null if the param does not exist or is empty.</DL>
</DD>
</DL>
<HR>
<A NAME="saveRequest(javax.servlet.ServletRequest)"><!-- --></A><H3>
saveRequest</H3>
<PRE>
public static void <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.604"><B>saveRequest</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getAndClearSavedRequest(javax.servlet.ServletRequest)"><!-- --></A><H3>
getAndClearSavedRequest</H3>
<PRE>
public static <A HREF="../../../../../org/apache/shiro/web/util/SavedRequest.html" title="class in org.apache.shiro.web.util">SavedRequest</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.612"><B>getAndClearSavedRequest</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getSavedRequest(javax.servlet.ServletRequest)"><!-- --></A><H3>
getSavedRequest</H3>
<PRE>
public static <A HREF="../../../../../org/apache/shiro/web/util/SavedRequest.html" title="class in org.apache.shiro.web.util">SavedRequest</A> <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.622"><B>getSavedRequest</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="redirectToSavedRequest(javax.servlet.ServletRequest, javax.servlet.ServletResponse, java.lang.String)"><!-- --></A><H3>
redirectToSavedRequest</H3>
<PRE>
public static void <A HREF="../../../../../src-html/org/apache/shiro/web/util/WebUtils.html#line.651"><B>redirectToSavedRequest</B></A>(<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletRequest.html?is-external=true" title="class or interface in javax.servlet">ServletRequest</A>&nbsp;request,
<A HREF="http://java.sun.com/javaee/5/docs/api/javax/servlet/ServletResponse.html?is-external=true" title="class or interface in javax.servlet">ServletResponse</A>&nbsp;response,
<A HREF="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;fallbackUrl)
throws <A HREF="http://java.sun.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</A></PRE>
<DL>
<DD>Redirects the to the request url from a previously
<A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#saveRequest(javax.servlet.ServletRequest)"><CODE>saved</CODE></A> request, or if there is no saved request, redirects the
end user to the specified <code>fallbackUrl</code>. If there is no saved request or fallback url, this method
throws an <A HREF="http://java.sun.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang"><CODE>IllegalStateException</CODE></A>.
<p/>
This method is primarily used to support a common login scenario - if an unauthenticated user accesses a
page that requires authentication, it is expected that request is
<A HREF="../../../../../org/apache/shiro/web/util/WebUtils.html#saveRequest(javax.servlet.ServletRequest)"><CODE>saved</CODE></A> first and then redirected to the login page. Then,
after a successful login, this method can be called to redirect them back to their originally requested URL, a
nice usability feature.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>request</CODE> - the incoming request<DD><CODE>response</CODE> - the outgoing response<DD><CODE>fallbackUrl</CODE> - the fallback url to redirect to if there is no saved request available.
<DT><B>Throws:</B>
<DD><CODE><A HREF="http://java.sun.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</A></CODE> - if there is no saved request and the <code>fallbackUrl</code> is <code>null</code>.
<DD><CODE><A HREF="http://java.sun.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</A></CODE> - if there is an error redirecting<DT><B>Since:</B></DT>
<DD>1.0</DD>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/WebUtils.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/shiro/web/util/SavedRequest.html" title="class in org.apache.shiro.web.util"><B>PREV CLASS</B></A>&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?org/apache/shiro/web/util/WebUtils.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="WebUtils.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
Copyright &#169; 2004-2016 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>