📄 expressionlanguage.jsp
字号:
<%-- jsf:pagecode language="java" location="/src/pagecode/expressionLanguage/ExpressionLanguage.java" --%><%-- /jsf:pagecode --%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%-- tpl:insert page="/template/jsfTemplate.jtpl" --%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@taglib uri="http://www.ibm.com/jsf/html_extended" prefix="hx"%>
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<META name="GENERATOR" content="IBM Software Development Platform">
<META http-equiv="Content-Style-Type" content="text/css">
<LINK href="../theme/Master.css" rel="stylesheet" type="text/css">
<LINK href="../theme/new.css" rel="stylesheet">
<LINK rel="stylesheet" type="text/css" href="../theme/stylesheet.css" title="Style">
<%-- tpl:put name="headarea" --%>
<title>expressionLanguage.jsp</title>
<%-- /tpl:put --%>
<LINK rel="stylesheet" type="text/css" href="/JSFandSDO/theme/stylesheet.css" title="Style">
</HEAD>
<f:view>
<BODY>
<TABLE class="title" cellpadding="0">
<TBODY>
<TR>
<TD class="noBorder" background="../images/gradient.jpg"
align="CENTER"><IMG border="0" src="../images/title.jpg"></TD>
</TR>
<TR>
<TD class="noBorder" align="RIGHT"><A href="/JSFandSDO">Return to Main Menu</A></TD>
</TR>
</TBODY>
</TABLE>
<%-- tpl:put name="bodyarea" --%>
<hx:scriptCollector id="scriptCollector1">
<h:form styleClass="form" id="form1">
<H2>Using JSTL Expression Language</H2>
This sample contains a JSF form that accepts two dates and display the days, months, and years between these dates using JSTL expression language.<BR>
<BR>
<TABLE border="1" cellpadding="3">
<TBODY>
<TR>
<TD colspan="2"><h:outputText styleClass="outputText" id="text14"
value="Enter a Starting Date" style="font-weight: bold"></h:outputText></TD>
</TR>
<TR>
<TD class="border"><h:outputText styleClass="outputText" id="text3" value="Month: "></h:outputText></TD>
<TD class="border"><h:selectOneMenu styleClass="selectOneMenu" id="menu1" value="#{requestScope.month}">
<f:selectItem itemValue="1" itemLabel="January" />
<f:selectItem itemValue="2" itemLabel="February" />
<f:selectItem itemValue="3" itemLabel="March" />
<f:selectItem itemValue="4" itemLabel="April" />
<f:selectItem itemValue="5" itemLabel="May" />
<f:selectItem itemValue="6" itemLabel="June" />
<f:selectItem itemValue="7" itemLabel="July" />
<f:selectItem itemValue="8" itemLabel="August" />
<f:selectItem itemValue="9" itemLabel="September" />
<f:selectItem itemValue="10" itemLabel="October" />
<f:selectItem itemValue="11" itemLabel="November" />
<f:selectItem itemValue="12" itemLabel="December" />
</h:selectOneMenu></TD>
</TR>
<TR>
<TD class="border"><h:outputText styleClass="outputText" id="text5" value="Day: "></h:outputText></TD>
<TD class="border"><h:inputText styleClass="inputText" id="text4" required="true" value="#{requestScope.day}">
</h:inputText><h:message for="text4"></h:message></TD>
</TR>
<TR>
<TD class="border"><h:outputText styleClass="outputText" id="text7" value="Year: "></h:outputText></TD>
<TD class="border"><h:inputText styleClass="inputText" id="text8" required="true" validator="#{pc_ExpressionLanguage.validateDate}" value="#{requestScope.year}">
</h:inputText><h:message for="text8"></h:message></TD>
</TR>
<TR>
<TD colspan="2"><h:outputText styleClass="outputText" id="text15"
value="Enter an Ending Date" style="font-weight: bold"></h:outputText></TD>
</TR>
<TR>
<TD class="border"><h:outputText styleClass="outputText" id="text1" value="Month: "></h:outputText></TD>
<TD class="border"><h:selectOneMenu styleClass="selectOneMenu" id="menu2" value="#{requestScope.returnMonth}">
<f:selectItem itemValue="1" itemLabel="January" />
<f:selectItem itemValue="2" itemLabel="February" />
<f:selectItem itemValue="3" itemLabel="March" />
<f:selectItem itemValue="4" itemLabel="April" />
<f:selectItem itemValue="5" itemLabel="May" />
<f:selectItem itemValue="6" itemLabel="June" />
<f:selectItem itemValue="7" itemLabel="July" />
<f:selectItem itemValue="8" itemLabel="August" />
<f:selectItem itemValue="9" itemLabel="September" />
<f:selectItem itemValue="10" itemLabel="October" />
<f:selectItem itemValue="11" itemLabel="November" />
<f:selectItem itemValue="12" itemLabel="December" />
</h:selectOneMenu></TD>
</TR>
<TR>
<TD class="border"><h:outputText styleClass="outputText" id="text10" value="Day: "></h:outputText></TD>
<TD class="border"><h:inputText styleClass="inputText" id="text2" value="#{requestScope.returnDay}" required="true"></h:inputText><h:message for="text2"></h:message></TD>
</TR>
<TR>
<TD class="border"><h:outputText styleClass="outputText" id="text11" value="Year: "></h:outputText></TD>
<TD class="border"><h:inputText styleClass="inputText" id="text12" validator="#{pc_ExpressionLanguage.validateReturnDate}" required="true" value="#{requestScope.returnYear}"></h:inputText><h:message for="text12"></h:message></TD>
</TR>
<TR>
<TD class="border"><BR>
</TD>
<TD class="border"><hx:commandExButton type="submit" value="Submit" styleClass="commandExButton" id="button1"></hx:commandExButton></TD>
</TR>
<TR>
<TD class="border"><h:outputText styleClass="outputText" id="text9" value="Date Range: " style="font-weight: bold"></h:outputText></TD>
<TD class="border"><c:choose>
<c:when test="${requestScope.returnMonth - requestScope.month < 0}">
<c:set var="yeardown" value="1" />
</c:when>
<c:when test="${requestScope.returnMonth - requestScope.month == 0 &&
requestScope.returnDay - requestScope.day < 0}">
<c:set var="yeardown" value="1" />
</c:when>
<c:otherwise>
<c:set var="yeardown" value="0" />
</c:otherwise>
</c:choose> <c:choose>
<c:when test="${requestScope.returnDay - requestScope.day < 0}">
<c:set var="monthdown" value="1" />
</c:when>
<c:otherwise>
<c:set var="monthdown" value="0" />
</c:otherwise>
</c:choose> <c:choose>
<c:when test="${requestScope.returnMonth - requestScope.month - monthdown < 0}">
<c:set var="months" value="${12 - ((requestScope.returnMonth - requestScope.month - monthdown) * -1)}" />
</c:when>
<c:otherwise>
<c:set var="months" value="${requestScope.returnMonth - requestScope.month - monthdown}" />
</c:otherwise>
</c:choose> <c:choose>
<c:when test="${requestScope.returnMonth - 1 == 2}">
<c:set var="daysinmonth" value="28" />
</c:when>
<c:when test="${requestScope.returnMonth - 1 == 4 ||
requestScope.returnMonth - 1 == 6 ||
requestScope.returnMonth - 1 == 9 ||
requestScope.returnMonth - 1 == 11}">
<c:set var="daysinmonth" value="30" />
</c:when>
<c:otherwise>
<c:set var="daysinmonth" value="31" />
</c:otherwise>
</c:choose> <c:choose>
<c:when test="${requestScope.returnDay - requestScope.day < 0}">
<c:set var="days" value="${daysinmonth - ((requestScope.returnDay - requestScope.day) * -1)}" />
</c:when>
<c:otherwise>
<c:set var="days" value="${requestScope.returnDay - requestScope.day}" />
</c:otherwise>
</c:choose> <c:out value="Years: ${requestScope.returnYear - requestScope.year - yeardown}" /><BR>
<c:out value="Months: ${months}" /><BR> <c:out value="Days: ${days}" /></TD>
</TR>
</TBODY>
</TABLE>
<H4>How It works:</H4>
JSTL expressions can be added to a JSF page and be used to perform common Web application tasks such as conditionals, iterators, and print statements. <BR>
<BR>To use JSTL tags you must include the tag library on the JSF page you are using - <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>.<BR>
<BR>
When the page is submitted JSTL expressions are used to calculate the length of time between the two dates and display it. <H4>Files
of Interest:</H4>
<UL>
<LI><B>WebContent/expressionLanguage/expressionLanguage.jsp</B> - (This Page) JSTL expression language tags are used on this page.</LI>
</UL>
</h:form>
</hx:scriptCollector>
<%-- /tpl:put --%>
<TABLE class="title" cellpadding="0">
<TBODY>
<TR>
<TD class="noBorder" align="RIGHT"><A href="/JSFandSDO">Return to Main Menu</A></TD>
</TR>
</TBODY>
</TABLE>
</BODY>
</f:view>
</HTML><%-- /tpl:insert --%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -