Java/JSTL/URL
JSTL Constructing URLs
<source lang="java">
<%@ taglib uri="http://java.sun.ru/jstl/core" prefix="c" %><%@ taglib uri="http://java.sun.ru/jstl/fmt" prefix="fmt" %> <html>
<head> <title>Create a URL</title> </head> <body> <form method="POST">
URL |
|
Enter a base URL: |
<input type="text" name="url" size="20" value="http://www.jexp.ru"/> |
Eneter a value for parameter "parm1" |
<input type="text" name="parm1" size="20" /> |
Eneter a value for parameter "parm2" |
<input type="text" name="parm2" size="20"/> |
Eneter a value for parameter "parm3" |
<input type="text" name="parm3" size="20"/> |
<input type="submit" value="Submit" name="submit" /> <input type="reset" value="Reset" name="reset" /> |
</form> <c:if test="${pageContext.request.method=="POST"}">
<c:url value="${param.url}" var="url"> <c:param name="parm1" value="${param.parm1}"/> <c:param name="parm2" value="${param.parm2}"/> <c:param name="parm3" value="${param.parm3}"/> </c:url>
The resulting URL is: <c:out value="${url}"/> </c:if> </body>
</html>
</source>
JSTL: generate URL, add parameters to url and display the parameters
<source lang="java">
<%@ taglib uri="http://java.sun.ru/jstl/core" prefix="c" %>
<html>
<head> <title>the c:url action (1)</title> </head> <body> This page takes 3 values that you specify, and forwards them to another JSP. That JSP will create a URL to another page, that then extracts the parameters and displays them. <p /> <form action="createURL.jsp" method="post">
Enter name: | <input type="text" name="name" /> |
Enter age: | <input type="text" name="age" /> |
Enter gender: | <input type="text" name="gender" /> |
<input type="submit" value="Submit details" /> </form> </body>
</html> //createURL.jsp
<%@ taglib uri="http://java.sun.ru/jstl/core" prefix="c" %> <c:url value="displayValues.jsp" var="displayURL">
<c:param name="nameParam" value="${param.name}" /> <c:param name="ageParam" value="${param.age}" /> <c:param name="genderParam" value="${param.gender}" />
</c:url> <html>
<head> <title>the c:url action (2)</title> </head> <body> This page receives the values you specified, and creates a URL that contains them. <p /> The generated URL is <c:out value="${displayURL}" />. <p/> Click to view the it. </body>
</html> //displayValues.jsp
<%@ taglib uri="http://java.sun.ru/jstl/core" prefix="c" %> <html>
<head> <title>the c:url action (3)</title> </head> <body>
List of query string parameters:
-
<c:forEach items="${param}" var="currentParam">
- <c:out value="${currentParam.key}" /> = <c:out value="${currentParam.value}" />
</c:forEach>
</body>
</html>
</source>