Here's an odd idea: What if we called Struts "Core", Struts "Config" instead?
After all, the purpose of the codebase is to realize the struts-config XML file. What goes into Struts "Core" might be ambiguous, but what goes inot Struts Config is defined, by, well, the struts-config XML declaration. Here's that new home page again, with s/Core/Config: > Welcome to Struts Config > > Struts Config provides the invisible underpinnings every professional > web application needs to survive. Struts Config is a flexible control > layer based on standard technologies like Java Servlets, JavaBeans, > ResourceBundles, and XML, as well as various Jakarta Commons packages. > Config helps you create an extensible development environment for your > application, based on published standards and proven design patterns. > > Struts Config provides its own Controller component and integrates with > other technologies to provide the Model and the View. For the Model, > Config can interact with standard data access technologies, like JDBC > and EJB, as well as most any third-party packages, like Hibernate, > iBATIS, or Object Relational Bridge. For the View, Config works well > with JavaServer Pages, including JSTL and JSF, as well as Velocity > Templates, XSLT, and other presentation systems. > > Struts Config in a Nutshell > > A web application uses a deployment descriptor to initialize resources > like servlets and taglibs. The deployment descriptor is formatted as a > XML document and named "web.xml". Likewise, Config uses a configuration > file to initialize its own resources. These resources include > ActionForms to collect input from users, ActionMappings to direct > input to server-side Actions, and ActionForwards to select output > pages. > > Here's a simple Struts configuration (struts-config.xml) for a login workflow: > > <?xml version="1.0" encoding="ISO-8859-1" ?> > <!DOCTYPE struts-config PUBLIC > "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" > "http://struts.apache.org/dtds/struts-config_1_3.dtd"> > <struts-config> > <form-beans> > <form-bean > name="logonForm" > type="app.LogonForm"/> > </form-beans> > <action-mappings> > <action > path="/Welcome" > forward="/pages/Welcome.jsp"/> > <action > path="/Logon" > forward="/pages/Logon.jsp"/> > <action > path="/LogonSubmit" > type="app.LogonAction" > name="logonForm" > scope="request" > validate="true" > input="/pages/Logon.jsp"> > <forward > name="success" > path="/pages/Welcome.jsp"/> > <forward > name="failure" > path="/pages/Logon.jsp"/> > </action> > <action > path="/Logoff" > type="app.LogoffAction"> > <forward > name="success" > path="/pages/Logoff.jsp"/> > </action> > </action-mappings> > <message-resources parameter="resources.application"/> > </struts-config> > > There are several other resources you can specify in Struts Config > configuration files. You can specify validations for the ActionForms > in an XML descriptor, using the Struts Validator. A standard > extension, Tiles, helps you build pages from smaller fragments. > > Struts Config is an extensible framework. Every class deployed by Config > can be replaced by your own default class. The properties of your > default class can be set using the Digester's set-property feature. > This is one reason why there are so many contributor extensions for > Struts Config . Config provides a base framework, but you can still write > your application your way. > > For more about Struts and its underlying technologies, see the User > Guide and the Developer Guides. > > Is Struts Config the best choice for every project? > > No. If you need to write a very simple application, with a handful of > pages, then you might consider a "Model 1" solution that uses only > server pages. > > But, if you are writing a more complicated application, with dozens of > pages, that need to be maintained over time, then Struts Config can help. For > more about whether Model 1 or or MVC/Model 2 is right for you, see > Understanding JavaServer Pages Model 2 architecture and Issues in > Struts Adoption. > > What about JSTL and JavaServer Faces? > > Next: Struts Config User Guide -T. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]