mapped properties, 57
MappingDispatchAction class, 82–84
mask validation, 111–112
match tag, 352–355
maxlength validation, 112
McClanahan, Craig R., 7, 8
message resources, 191–193
message tag, 321–323, 474–475
MessageFormat class, 190
message-resources tag, 414–415
MessageResources.properties, 32
messages tag, 283–285
messagesNotPresent tag, 355
messagesPresent tag, 356
metadata tags, 417, 427
Mini HR sample application
adding declarative exception handling to, 166–171
adding Tiles to, 153–160
adding Validator to, 126–129
application files, 11–13
compiling, 33–35
Controller layer, 86–87
converting to use modules, 178–184
Employee.java, 27
EmployeeSearchService.java, 25–27
flow of execution, 38–39
index.jsp, 13–15
integrating AJAX with, 486–493
internationalizing, 194–200
MessageResources.properties, 32
Model layer, 44–46
overview, 11
packaging, 35
recompiling, repackaging, and running with AJAX, 492–493
running, 35–37
SearchAction.java, 23–25
SearchForm.java, 21–23
search.jsp, 15–20, 489–492
struts-config.xml, 29–32, 488–489
using Struts Scripting with, 453–456
using the Struts-Faces Integration Library with, 477–483
View layer, 60–64
web.xml, 28–29
Welcome File list, 29
minlength validation, 112–113
Model layer
of the Mini HR sample application, 44–46
overview, 41
and Struts, 42–44
sublayers, 41–42
using BeanUtils to transfer data to Model classes, 42–44
Model-View-Controller architecture. See MVC architecture
modules
configuring links to access module-
specific JSPs, 176–177
configuring the web.xml deployment descriptor, 175–176
converting the Mini HR application to use modules, 178–184
creating a Struts configuration file for each module, 180–181
creating Struts configuration files for, 174–175
overview, 173–174
setting up module directories and files, 179–180
updating the index.jsp file to link to each module, 183
using Tiles with, 177–178
using Validator with, 177
msg tag, 439–440
multibox tag, 285–286
multiple configuration files, support for, 173–174
MVC architecture
controller components, 6
Controller layer, 65–87
model components, 6
Model layer, 41–46
overview, 5–6
view components, 6
View layer, 47–64