~ubuntu-branches/ubuntu/lucid/libstruts1.2-java/lucid

« back to all changes in this revision

Viewing changes to contrib/struts-el/target/exercise-taglib/logic-match.jsp

  • Committer: Bazaar Package Importer
  • Author(s): Arnaud Vandyck
  • Date: 2006-04-24 12:14:23 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20060424121423-naev53qigqgks0sa
Tags: 1.2.9-1
New upstream  release Fixes  three security  problems: CVE-2006-1546,
CVE-2006-1547,  CVE-2006-1548  (closes:  #360551),  thanks  to  Moritz
Muehlenhoff.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
 
<%@ page language="java" %>
3
 
<%@ taglib uri="/WEB-INF/struts-html-el.tld"  prefix="html-el"  %>
4
 
<%@ taglib uri="/WEB-INF/struts-bean-el.tld"  prefix="bean-el"  %>
5
 
<%@ taglib uri="/WEB-INF/struts-logic-el.tld" prefix="logic-el" %>
6
 
<%@ taglib uri="/WEB-INF/c.tld" prefix="c" %>
7
 
<html-el:html>
8
 
<head>
9
 
<title>Test struts logic-el Match Tags</title>
10
 
</head>
11
 
<body bgcolor="white">
12
 
 
13
 
<div align="center">
14
 
<h1>Test struts logic-el Match Tags</h1>
15
 
</div>
16
 
 
17
 
<jsp:useBean id="bean" scope="page" class="org.apache.struts.webapp.exercise.TestBean"/>
18
 
<c:set var="jcookie" value='${cookie["JSESSIONID"].value}'/>
19
 
<c:set var="uaheader" value='${header["User-Agent"]}'/>
20
 
<c:set var="rparam" value='${param["param1"]}'/>
21
 
<%
22
 
  pageContext.setAttribute("string", "String test value");
23
 
%>
24
 
 
25
 
<table border="1">
26
 
  <tr>
27
 
    <th>Test Type</th>
28
 
    <th>Variable Content</th>
29
 
    <th>Value Content</th>
30
 
    <th>Correct Value Test</th>
31
 
    <th>Test Result</th>
32
 
  </tr>
33
 
  <tr>
34
 
    <td>Cookie / Any</td>
35
 
    <%-- This isn't an exact parallel.  With "bean:cookie", you can specify a
36
 
                                         default value.  That would take another step with this. --%>
37
 
    <td><c:out value="${jcookie}"/></td>
38
 
    <td>0</td>
39
 
    <td>contains</td>
40
 
    <td>
41
 
      <c:choose>
42
 
       <c:when test="${not empty jcookie}">
43
 
        <%-- The functionality of "logic:match" will eventually be available
44
 
                                 through a string function in the EL expression. --%>
45
 
        <logic-el:match expr="${jcookie}" value="0">
46
 
         match
47
 
        </logic-el:match>
48
 
        <logic-el:notMatch expr="${jcookie}" value="0">
49
 
         notMatch
50
 
        </logic-el:notMatch>
51
 
       </c:when>
52
 
       <c:otherwise>
53
 
        missing
54
 
       </c:otherwise>
55
 
      </c:choose>
56
 
    </td>
57
 
  </tr>
58
 
  <tr>
59
 
    <td>Cookie / End</td>
60
 
    <td><c:out value="${jcookie}"/></td>
61
 
    <td>0</td>
62
 
    <td>ends with</td>
63
 
    <td>
64
 
      <c:choose>
65
 
       <c:when test="${not empty jcookie}">
66
 
        <logic-el:match expr="${jcookie}" location="end" value="0">
67
 
         match
68
 
        </logic-el:match>
69
 
        <logic-el:notMatch expr="${jcookie}" location="end" value="0">
70
 
         notMatch
71
 
        </logic-el:notMatch>
72
 
       </c:when>
73
 
       <c:otherwise>
74
 
        missing
75
 
       </c:otherwise>
76
 
      </c:choose>
77
 
    </td>
78
 
  </tr>
79
 
  <tr>
80
 
    <td>Cookie / Start</td>
81
 
    <td><c:out value="${jcookie}"/></td>
82
 
    <td>0</td>
83
 
    <td>starts with</td>
84
 
    <td>
85
 
      <c:choose>
86
 
       <c:when test="${not empty jcookie}">
87
 
        <logic-el:match expr="${jcookie}" location="start" value="0">
88
 
         match
89
 
        </logic-el:match>
90
 
        <logic-el:notMatch expr="${jcookie}" location="start" value="0">
91
 
         notMatch
92
 
        </logic-el:notMatch>
93
 
       </c:when>
94
 
       <c:otherwise>
95
 
        missing
96
 
       </c:otherwise>
97
 
      </c:choose>
98
 
    </td>
99
 
  </tr>
100
 
  <tr>
101
 
    <td>Header / Any</td>
102
 
    <td><c:out value="${uaheader}"/></td>
103
 
    <td>Mozilla</td>
104
 
    <td>contains</td>
105
 
    <td>
106
 
      <c:choose>
107
 
       <c:when test="${not empty uaheader}">
108
 
        <logic-el:match expr="${uaheader}" value="Mozilla">
109
 
         match
110
 
        </logic-el:match>
111
 
        <logic-el:notMatch expr="${uaheader}" value="Mozilla">
112
 
         notMatch
113
 
        </logic-el:notMatch>
114
 
       </c:when>
115
 
       <c:otherwise>
116
 
        missing
117
 
       </c:otherwise>
118
 
      </c:choose>
119
 
    </td>
120
 
  </tr>
121
 
  <tr>
122
 
    <td>Header / End</td>
123
 
    <td><c:out value="${uaheader}"/></td>
124
 
    <td>Mozilla</td>
125
 
    <td>ends with</td>
126
 
    <td>
127
 
      <c:choose>
128
 
       <c:when test="${not empty uaheader}">
129
 
        <logic-el:match expr="${uaheader}" location="end" value="Mozilla">
130
 
         match
131
 
        </logic-el:match>
132
 
        <logic-el:notMatch expr="${uaheader}" location="end" value="Mozilla">
133
 
         notMatch
134
 
        </logic-el:notMatch>
135
 
       </c:when>
136
 
       <c:otherwise>
137
 
        missing
138
 
       </c:otherwise>
139
 
      </c:choose>
140
 
    </td>
141
 
  </tr>
142
 
  <tr>
143
 
    <td>Header / Start</td>
144
 
    <td><c:out value="${uaheader}"/></td>
145
 
    <td>Mozilla</td>
146
 
    <td>starts with</td>
147
 
    <td>
148
 
      <c:choose>
149
 
       <c:when test="${not empty uaheader}">
150
 
        <logic-el:match expr="${uaheader}" location="start" value="Mozilla">
151
 
         match
152
 
        </logic-el:match>
153
 
        <logic-el:notMatch expr="${uaheader}" location="start" value="Mozilla">
154
 
         notMatch
155
 
        </logic-el:notMatch>
156
 
       </c:when>
157
 
       <c:otherwise>
158
 
        missing
159
 
       </c:otherwise>
160
 
      </c:choose>
161
 
    </td>
162
 
  </tr>
163
 
  <tr>
164
 
    <td>Name / Any</td>
165
 
    <td><c:out value="${string}"/></td>
166
 
    <td>value</td>
167
 
    <td>contains</td>
168
 
    <td>
169
 
      <logic-el:match name="string" value="value">
170
 
        match
171
 
      </logic-el:match>
172
 
      <logic-el:notMatch name="string" value="value">
173
 
        notMatch
174
 
      </logic-el:notMatch>
175
 
    </td>
176
 
  </tr>
177
 
  <tr>
178
 
    <td>Name / End</td>
179
 
    <td><c:out value="${string}"/></td>
180
 
    <td>value</td>
181
 
    <td>ends with</td>
182
 
    <td>
183
 
      <logic-el:match name="string" location="end" value="value">
184
 
        match
185
 
      </logic-el:match>
186
 
      <logic-el:notMatch name="string" location="end" value="value">
187
 
        notMatch
188
 
      </logic-el:notMatch>
189
 
    </td>
190
 
  </tr>
191
 
  <tr>
192
 
    <td>Name / Start</td>
193
 
    <td><c:out value="${string}"/></td>
194
 
    <td>value</td>
195
 
    <td>starts with</td>
196
 
    <td>
197
 
      <logic-el:match name="string" location="start" value="value">
198
 
        match
199
 
      </logic-el:match>
200
 
      <logic-el:notMatch name="string" location="start" value="value">
201
 
        notMatch
202
 
      </logic-el:notMatch>
203
 
    </td>
204
 
  </tr>
205
 
  <tr>
206
 
    <td>Parameter / Any</td>
207
 
    <td><c:out value="${rparam}"/></td>
208
 
    <td>value1</td>
209
 
    <td>contains</td>
210
 
    <td>
211
 
      <c:choose>
212
 
       <c:when test="${not empty rparam}">
213
 
        <logic-el:match expr="${rparam}" value="value1">
214
 
         match
215
 
        </logic-el:match>
216
 
        <logic-el:notMatch expr="${rparam}" value="value1">
217
 
         notMatch
218
 
        </logic-el:notMatch>
219
 
       </c:when>
220
 
       <c:otherwise>
221
 
        missing
222
 
       </c:otherwise>
223
 
      </c:choose>
224
 
    </td>
225
 
  </tr>
226
 
  <tr>
227
 
    <td>Parameter / End</td>
228
 
    <td><c:out value="${rparam}"/></td>
229
 
    <td>value1</td>
230
 
    <td>ends with</td>
231
 
    <td>
232
 
      <c:choose>
233
 
       <c:when test="${not empty rparam}">
234
 
        <logic-el:match expr="${rparam}" location="end" value="value1">
235
 
         match
236
 
        </logic-el:match>
237
 
        <logic-el:notMatch expr="${rparam}" location="end" value="value1">
238
 
         notMatch
239
 
        </logic-el:notMatch>
240
 
       </c:when>
241
 
       <c:otherwise>
242
 
        missing
243
 
       </c:otherwise>
244
 
      </c:choose>
245
 
    </td>
246
 
  </tr>
247
 
  <tr>
248
 
    <td>Parameter / Start</td>
249
 
    <td><c:out value="${rparam}"/></td>
250
 
    <td>value1</td>
251
 
    <td>starts with</td>
252
 
    <td>
253
 
      <c:choose>
254
 
       <c:when test="${not empty rparam}">
255
 
        <logic-el:match expr="${rparam}" location="start" value="value1">
256
 
         match
257
 
        </logic-el:match>
258
 
        <logic-el:notMatch expr="${rparam}" location="start" value="value1">
259
 
         notMatch
260
 
        </logic-el:notMatch>
261
 
       </c:when>
262
 
       <c:otherwise>
263
 
        missing
264
 
       </c:otherwise>
265
 
      </c:choose>
266
 
    </td>
267
 
  </tr>
268
 
  <tr>
269
 
    <td>Property / Any</td>
270
 
    <td><c:out value="${bean.stringProperty}"/></td>
271
 
    <td>FOO</td>
272
 
    <td>contains</td>
273
 
    <td>
274
 
      <logic-el:match expr="${bean.stringProperty}" value="FOO">
275
 
        match
276
 
      </logic-el:match>
277
 
      <logic-el:notMatch expr="${bean.stringProperty}" value="FOO">
278
 
        notMatch
279
 
      </logic-el:notMatch>
280
 
    </td>
281
 
  </tr>
282
 
  <tr>
283
 
    <td>Property / End</td>
284
 
    <td><c:out value="${bean.stringProperty}"/></td>
285
 
    <td>FOO</td>
286
 
    <td>ends with</td>
287
 
    <td>
288
 
      <logic-el:match expr="${bean.stringProperty}" location="end" value="FOO">
289
 
        match
290
 
      </logic-el:match>
291
 
      <logic-el:notMatch expr="${bean.stringProperty}"
292
 
                                                            location="end" value="FOO">
293
 
        notMatch
294
 
      </logic-el:notMatch>
295
 
    </td>
296
 
  </tr>
297
 
  <tr>
298
 
    <td>Property / Start</td>
299
 
    <td><c:out value="${bean.stringProperty}"/></td>
300
 
    <td>FOO</td>
301
 
    <td>starts with</td>
302
 
    <td>
303
 
      <logic-el:match expr="${bean.stringProperty}"
304
 
                      location="start" value="FOO">
305
 
        match
306
 
      </logic-el:match>
307
 
      <logic-el:notMatch expr="${bean.stringProperty}"
308
 
             location="start" value="FOO">
309
 
        notMatch
310
 
      </logic-el:notMatch>
311
 
    </td>
312
 
  </tr>
313
 
</table>
314
 
 
315
 
</body>
316
 
</html-el:html>