<%-- This page won't actually work, as it is simply designed to display jsp syntax highlighting. --%> <%@ page info="A Page to Test Kate Jsp Syntax Highlighting" language="java" errorPage="/test-error-page.jsp"%> <%@ include file="/include/myglobalvars.jsp"%> --%> <%@ page import="java.util.*, java.io.*, java.math.*" %> <%@ taglib uri="/WEB-INF/lib/si_taglib.tld" prefix="si"%> <jsp:useBean id="aPageBean" scope="page" class="my.package.MyPageBean"/> <jsp:useBean id="aRequestBean" scope="request" class="my.package.MyRequestBean"/> <% // We can decipher our expected parameters here. String parm1 = noNull(request.getParameter(PARAMETER_1)).trim(); String parm2 = noNull(request.getParameter(PARAMETER_2)).trim(); String parm3 = noNull(request.getParameter(PARAMETER_3)).trim(); String parm4 = noNull(request.getParameter(PARAMETER_4)).trim(); String parm5 = noNull(request.getParameter(PARAMETER_5)).trim(); // A sample collection of Integers to display some code folding. List intList = getIntList(10); %> <html> <title>A Sample Jsp</title> <head> <script language="javascript"><!-- function doAlert1() { alert("This is the first javascript example."); } function doAlert2() { alert("This is the second javascript example."); } //--></script> <style type="text/css"> body{ color: yellow; } </style> </head> <body> <%-- The top label table. --%> <table width="400" cellpadding="0" cellspacing="0" border="0"> <tr> <td><font size="3"><b>The following parameters were detected:</b></font></td> </tr> </table> <%-- Display the parameters which might have been passed in. --%> <table width="400" cellpadding="0" cellspacing="0" border="0"> <%-- Label; Actual Parameter String; Value Detected --%> <tr> <td><b>PARAMETER_1</b></td> <td align="center"><%=PARAMETER_1%></td> <td align="right">"<%=parm1%>"</td> </tr> <%-- Label; Actual Parameter String; Value Detected --%> <tr> <td><b>PARAMETER_2</b></td> <td align="center"><%=PARAMETER_2%></td> <td align="right">"<%=parm2%>"</td> </tr> <%-- Label; Actual Parameter String; Value Detected --%> <tr> <td><b>PARAMETER_3</b></td> <td align="center"><%=PARAMETER_3%></td> <td align="right">"<%=parm3%>"</td> </tr> <%-- Label; Actual Parameter String; Value Detected --%> <tr> <td><b>PARAMETER_4</b></td> <td align="center"><%=PARAMETER_4%></td> <td align="right">"<%=parm4%>"</td> </tr> <%-- Label; Actual Parameter String; Value Detected --%> <tr> <td><b>PARAMETER_5</b></td> <td align="center"><%=PARAMETER_5%></td> <td align="right">"<%=parm5%>"</td> </tr> </table> <br><br> <%-- Display our list of random Integers (shows code folding). --%> <table width="400" cellpadding="0" cellspacing="0" border="0"> <% if (intList != null && intList.size() > 0) { %> <tr><td><b>Here are the elements of intList...</b></td></tr> <% Iterator intListIt = intList.iterator(); while (intListIt.hasNext()) { Integer i = (Integer) intListIt.next(); %> <tr><td><%=i.toString()%></td></tr> <% } } else { %> <tr><td><font color="blue"><b><i>Oooops, we forgot to initialize intList!</i></b></font></td></tr> <% } %> </table> <br><br> <%-- We can call javascript functions. --%> <table width="400" cellpadding="0" cellspacing="0" border="0"> <tr><td colspan="2"><b>Test our javascript...</b></td></tr> <tr> <td><input type="button" name="button1" value="Alert 1" onmouseup="javascript:doAlert1()"></td> <td><input type="button" name="button2" value="Alert 2" onmouseup="javascript:doAlert2()"></td> </tr> </table> <br><br> <%-- If we actually had defined a tag library. --%> <table width="400" cellpadding="0" cellspacing="0" border="0"> <tr><td> <my:SampleTag prop1="first" prop2="third"> <my:SampleTagChild nameProp="value1"/> <my:SampleTagChild nameProp="value2"/> </my:SampleTag> </td></tr> </table> <br><br> <%-- Expression language. --%> <table width="400" cellpadding="0" cellspacing="0" border="0"> <c:if test="${!empty param.aParam}"> <c:set var="myParam" scope="session" value="${param.aParam}"/> </c:if> <tr><td>myParam's value: "<c:out value="${myParam}" default=="Default"/>"</td></tr> </table> </body> </html> <%! /* A place for class variables and functions... */ // Define some sample parameter names that this page might understand. private static final String PARAMETER_1 = "p1"; private static final String PARAMETER_2 = "p2"; private static final String PARAMETER_3 = "p3"; private static final String PARAMETER_4 = "p4"; private static final String PARAMETER_5 = "p5"; // Returns str trimmed, or an empty string if str is null. private static String noNull(String str) { String retStr; if (str == null) retStr = ""; else retStr = str.trim(); return retStr; } // Returns a list of Integers with listSize elements. private static List getIntList(int listSize) { ArrayList retList = new ArrayList(listSize); for (int i = 0; i < listSize; i++) retList.add(new Integer( (int) (Math.random() * 100) )); return retList; } %>