Forwards a request to a web resource.
<jsp:forward page="{
relativeURL
| <%=
expression
%>}" />
<jsp:forward page="{relativeURL
| <%=expression
%>}" > <jsp:param name="parameterName
" value="{parameterValue
| <%=expression
%>}" /> + </jsp:forward>
<jsp:forward page="{relativeURL
| %=expression
% }" />
<jsp:forward page="{relativeURL
| %=expression
% }"> <jsp:param name="parameterName
" value="{parameterValue
| %=expression
%}" /> + </jsp:forward> }
<jsp:forward page="/servlet/login" /> <jsp:forward page="/servlet/login"> <jsp:param name="username" value="jsmith" /> </jsp:forward>
The <jsp:forward>
element forwards the request
object containing the client request information from one JSP page to another resource. The target resource can be an HTML file, another JSP page, or a servlet, as long as it is in the same application context as the forwarding JSP page. The lines in the source JSP page after the <jsp:forward>
element are not processed.
You can pass parameter names and values to the target resource by using a <jsp:param>
clause. An example of this would be passing the parameter name username
(with name="username"
) and the value scott
(with value="scott"
) to a servlet as part of the request. If you use <jsp:param>
, the target resource should be a dynamic resource that can handle the parameters.
Be careful when using <jsp:forward>
with unbuffered output. If you have used the page directive with buffer="none"
to specify that the output of your JSP page should not be buffered, and if the JSP page has any data in the out object, using <jsp:forward>
will cause an IllegalStateException
.
page="{
relativeURL
| <%=
expression
%>}"
String
or an expression representing the relative URL of the component to which you are forwarding the request. The component can be another JSP page, a servlet, or any other object that can respond to a request.
<jsp:param name="
parameterName
"
value="{parameterValue
| <%=expression
%>}" />+
- Sends one or more name/value pairs as parameters to a dynamic resource. The target resource should be dynamic, that is, a JSP page, servlet, or other resource that can process the data that is sent to it as parameters.
- You can use more than one
<jsp:param>
clause if you need to send more than one parameter to the target resource. Thename
attribute specifies the parameter name and takes a case-sensitive literal string as a value. Thevalue
attribute specifies the parameter value and takes either a case-sensitive literal string or an expression that is evaluated at request time.