You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@struts.apache.org by hu...@apache.org on 2005/11/10 14:45:30 UTC
svn commit: r332294 - in /struts: apps/trunk/xdocs/ bsf/trunk/xdocs/
core/trunk/xdocs/userGuide/ el/trunk/xdocs/ taglib/trunk/xdocs/
Author: husted
Date: Thu Nov 10 05:45:21 2005
New Revision: 332294
URL: http://svn.apache.org/viewcvs?rev=332294&view=rev
Log:
* Core - Exchange content with Taglib
* Taglib - Update for 1.3.x series.
* App - Conform navigation.zml.
* BSF - Conform navigation.xml and title. The "changes" page doesn't transform -- is the name reserved by Maven?
* EL - Update for 1.3.x series. Still need to merge content of "Welcome" and "FAQ" pages.
Modified:
struts/apps/trunk/xdocs/navigation.xml
struts/bsf/trunk/xdocs/changes.xml
struts/bsf/trunk/xdocs/index.xml
struts/bsf/trunk/xdocs/navigation.xml
struts/core/trunk/xdocs/userGuide/building_view.xml
struts/core/trunk/xdocs/userGuide/index.xml
struts/el/trunk/xdocs/index.xml
struts/el/trunk/xdocs/navigation.xml
struts/el/trunk/xdocs/struts-el.xml
struts/taglib/trunk/xdocs/building_view.xml
struts/taglib/trunk/xdocs/navigation.xml
Modified: struts/apps/trunk/xdocs/navigation.xml
URL: http://svn.apache.org/viewcvs/struts/apps/trunk/xdocs/navigation.xml?rev=332294&r1=332293&r2=332294&view=diff
==============================================================================
--- struts/apps/trunk/xdocs/navigation.xml (original)
+++ struts/apps/trunk/xdocs/navigation.xml Thu Nov 10 05:45:21 2005
@@ -3,7 +3,7 @@
<body>
<menu name="Quick Links">
<item
- name="Struts"
+ name="Apache Struts Home"
href="../index.html"/>
</menu>
</body>
Modified: struts/bsf/trunk/xdocs/changes.xml
URL: http://svn.apache.org/viewcvs/struts/bsf/trunk/xdocs/changes.xml?rev=332294&r1=332293&r2=332294&view=diff
==============================================================================
--- struts/bsf/trunk/xdocs/changes.xml (original)
+++ struts/bsf/trunk/xdocs/changes.xml Thu Nov 10 05:45:21 2005
@@ -1,7 +1,24 @@
<?xml version="1.0" ?>
+<!--
+Copyright 1999-2005 The Apache Software Foundation
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+<!--
+// ======================================================================== 78
+-->
<document>
<properties>
- <title>Struts BSF Actions Change History</title>
+ <title>Change History</title>
</properties>
<body>
Modified: struts/bsf/trunk/xdocs/index.xml
URL: http://svn.apache.org/viewcvs/struts/bsf/trunk/xdocs/index.xml?rev=332294&r1=332293&r2=332294&view=diff
==============================================================================
--- struts/bsf/trunk/xdocs/index.xml (original)
+++ struts/bsf/trunk/xdocs/index.xml Thu Nov 10 05:45:21 2005
@@ -1,8 +1,24 @@
<?xml version="1.0"?>
-<document url="index.html">
+<!--
+Copyright 1999-2005 The Apache Software Foundation
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+<!--
+// ======================================================================== 78
+-->
+<document>
<properties>
- <title>BSF Scripting</title>
+ <title>Welcome</title>
</properties>
<body>
Modified: struts/bsf/trunk/xdocs/navigation.xml
URL: http://svn.apache.org/viewcvs/struts/bsf/trunk/xdocs/navigation.xml?rev=332294&r1=332293&r2=332294&view=diff
==============================================================================
--- struts/bsf/trunk/xdocs/navigation.xml (original)
+++ struts/bsf/trunk/xdocs/navigation.xml Thu Nov 10 05:45:21 2005
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<project name="Struts Framework"
+<project name="Struts BSF Scripting"
href="http://struts.apache.org"
image="images/struts.gif">
- <title>Struts BSF Scripting - Apache Struts Framework</title>
+ <title>Apache Struts - Scripts BSF Scripting</title>
<body>
- <menu name="BSF Scripting">
+ <menu name="Struts BSF Scripting">
<item name="Welcome" href="index.html"/>
<item name="What's New" href="index.html#What_s_New"/>
<item name="Usage" href="index.html#Usage_Notes"/>
@@ -14,7 +14,7 @@
<menu name="Quick Links">
<item
- name="Struts"
+ name="Apache Struts Home"
href="../index.html"/>
</menu>
</body>
Modified: struts/core/trunk/xdocs/userGuide/building_view.xml
URL: http://svn.apache.org/viewcvs/struts/core/trunk/xdocs/userGuide/building_view.xml?rev=332294&r1=332293&r2=332294&view=diff
==============================================================================
--- struts/core/trunk/xdocs/userGuide/building_view.xml (original)
+++ struts/core/trunk/xdocs/userGuide/building_view.xml Thu Nov 10 05:45:21 2005
@@ -417,141 +417,9 @@
</subsection>
-<a name="other_presentations"/>
-<subsection name="3.4 Other Presentation Techniques">
-
- <p>
- Although the look and feel of your application can be completely
- constructed based on the standard capabilities of JSP and Struts
- Taglibs, you should consider employing other techniques that
- will improve component reuse, reduce maintenance efforts, and/or reduce
- errors.
- Several options are discussed in the following sections.
- </p>
-
-</subsection>
-
-<a name="custom_tags"/>
-<subsection name="3.4.1 Application-Specific Custom Tags">
-
- <p>
- Beyond using the custom tags provided by Struts Taglibs, it is easy
- to create tags that are specific to the application you are building, to
- assist in creating the user interface. The MailReader example included with
- the Struts Applications subproject illustrates this principle by creating the
- following tags unique to
- the implementation of this application:
- </p>
-
- <ul>
- <li><strong>checkLogon</strong> - Checks for the existence of a particular session
- object, and forwards control to the logon page if it is missing. This is
- used to catch cases where a user has bookmarked a page in the middle of
- your application and tries to bypass logging on, or if the user's session
- has been timed out. (Note that there are better ways to authenticate users; the
- checkLogon tag is simply meant to demonstrate writing your own custom tags.) </li>
- <li><strong>linkSubscription</strong> - Generates a hyperlink to a details page
- for a Subscription, which passes the required primary key values as
- request attributes. This is used when listing the subscriptions associated
- with a user, and providing links to edit or delete them.</li>
- <li><strong>linkUser</strong> - Generates a hyperlink to a details page
- for a User, which passes the required primary key values as
- request attributes.</li>
- </ul>
-
- <p>
- The source code for these tags is in the <code>shared/src/java</code>
- directory of the Applications subpackage,
- in package <code>org.apache.struts.apps.mailreader.taglib</code>,
- along with the other Java
- classes that are used in this application.
- </p>
-</subsection>
-
-<a name="includes"/>
-<subsection name="3.4.2 Page Composition With Includes">
-
- <p>
- Creating the entire presentation of a page in one JSP file (with custom
- tags and beans to access the required dynamic data) is a very common
- design approach, and was employed in the MailReader example included
- with Struts Applications.
- However, many applications require the display of multiple logically
- distinct portions of your application together on a single page.
- </p>
-
- <p>
- For example, a portal application might have some or all of the following
- functional capabilities available on the portal's "home" page:
- </p>
-
- <ul>
-
- <li>
- Access to a search engine for this portal.
- </li>
-
- <li>
- One or more "news feed" displays, with the topics of interest
- customized from the user's registration profile.
- </li>
-
- <li>
- Access to discussion topics related to this portal.
- </li>
-
- <li>
- A "mail waiting" indicator if your portal provides free email
- accounts.
- </li>
-
- </ul>
-
- <p>
- The development of the various segments of this site is easier if you
- can divide up the work, and assign different developers to the different
- segments.
- Then, you can use the <em>include</em> capability of JavaServer Pages
- technology to combine the results into a single result page, or use the
- include tag provided with Struts Taglibs.
- There are three types of <em>include</em> available, depending on
- when you want the combination of output to occur:
- </p>
-
- <ul>
-
- <li>
- An <code><%@ include file="xxxxx" %></code> directive can
- include a file that contains Java code or JSP tags.
- The code in the included file can even reference variables declared
- earlier in the outer jsp page.
- The code is inlined into the other JavaServer Page before it is
- compiled so it can definitely contain more than just HTML.
- </li>
-
- <li>
- The include <em>action</em> (<code><jsp:include page="xxxxx"
- flush="true" /></code>) is processed at request time, and is
- handled transparently by the server.
- Among other things, that means you can conditionally perform the
- include by nesting it within a tag like
- <a href="struts-logic.html#equal">equal</a> by using it's
- parameter attribute.
- </li>
-
- <li>
- The <a href="struts-bean.html#include">bean:include</a>
- tag takes either a an argument "forward" representing a logical name
- mapped to the jsp to include, or the "id" argument, which represents a
- page context String variable to print out to the jsp page.
- </li>
-
- </ul>
-
-</subsection>
<a name="Tiles"/>
-<subsection name="3.4.3 Page Composition With Tiles">
+<subsection name="3.3.4 Page Composition With Tiles">
<p>
Tiles is a powerful templating library that allows you to construct views
@@ -642,8 +510,47 @@
</subsection>
+<a name="presentation_frameworks"/>
+<subsection name="3.4 Presentation Frameworks">
+ <p>
+ Struts Core is supported by many presentation frameworks,
+ and there are a great number of extensions to Struts Core
+ to help make creating view components even easier.
+ </p>
+
+ Some popular presentation layer frameworks include:
+ <ul>
+ <li>
+ <a href="http://struts.apache.org/struts-taglib/">
+ Struts Taglibs</a>
+ </li>
+ <li>
+ <a href="http://struts.sourceforge.net/struts-cocoon/">
+ Struts Cocoon</a>
+ </li>
+ <li>
+ <a href="http://jakarta.apache.org/velocity/tools/struts/">
+ Velocity Struts</a>
+ </li>
+ <li>
+ <a href="http://stxx.sourceforge.net/">Stxx for XLST</a>
+ </li>
+ </ul>
+</subsection>
+
+<a name="other_presentations"/>
+<subsection name="3.5 Other Presentation Techniques">
+
+ <p>
+ Although the look and feel of your application can be completely
+ constructed based on the standard capabilities of presentation libraries,
+ you may need to employ other techniques to render some responses directly.
+ </p>
+
+</subsection>
+
<a name="image_rendering"/>
- <subsection name="3.4.4 Image Rendering Components">
+ <subsection name="3.5.1 Image Rendering Components">
<p>
Some applications require dynamically generated images, like the
@@ -677,7 +584,7 @@
</subsection>
<a name="text_rendering"/>
- <subsection name="3.4.5 Rendering Text">
+ <subsection name="3.5.2 Rendering Text">
<p>
Some applications require dynamically generated text or markup,
@@ -695,33 +602,6 @@
</subsection>
-<a name="presentation_frameworks"/>
-<subsection name="3.5 Presentation Frameworks">
- <p>
- Struts Core is supported by many presentation frameworks,
- and there are a great number of extensions to Struts Core
- to help make creating view components even easier.
- </p>
-
- Some popular presentation layer frameworks include:
- <ul>
- <li>
- <a href="http://struts.apache.org/struts-taglib/">
- Struts Taglibs</a>
- </li>
- <li>
- <a href="http://struts.sourceforge.net/struts-cocoon/">
- Struts Cocoon</a>
- </li>
- <li>
- <a href="http://jakarta.apache.org/velocity/tools/struts/">
- Velocity Struts</a>
- </li>
- <li>
- <a href="http://stxx.sourceforge.net/">Stxx for XLST</a>
- </li>
- </ul>
-</subsection>
</section>
Modified: struts/core/trunk/xdocs/userGuide/index.xml
URL: http://svn.apache.org/viewcvs/struts/core/trunk/xdocs/userGuide/index.xml?rev=332294&r1=332293&r2=332294&view=diff
==============================================================================
--- struts/core/trunk/xdocs/userGuide/index.xml (original)
+++ struts/core/trunk/xdocs/userGuide/index.xml Thu Nov 10 05:45:21 2005
@@ -99,16 +99,16 @@
<li><a href="building_view.html#form_population">3.3.1 Automatic Form Population</a></li>
<li><a href="building_view.html#form_validation">3.3.2 Automatic Form Validation</a></li>
<li><a href="building_view.html#validator">3.3.3 The Struts Validator</a></li>
- </ul></li>
- <li><a href="building_view.html#other_presentations">3.4 Other Presentation Techniques</a>
+ <li><a href="building_view.html#Tiles">3.3.4 Page Composition With Tiles</a></li>
+ </ul>
+ </li>
+ <li><a href="building_view.html#presentation_frameworks">3.4 Presentation Frameworks</a></li>
+ <li><a href="building_view.html#other_presentations">3.4 Direct Presentation Techniques</a>
<ul>
- <li><a href="building_view.html#custom_tags">3.4.1 Application-Specific Custom Tags</a></li>
- <li><a href="building_view.html#includes">3.4.2 Page Composition With Includes</a></li>
- <li><a href="building_view.html#Tiles">3.4.3 Page Composition With Tiles</a></li>
- <li><a href="building_view.html#image_rendering">3.4.4 Image Rendering Components</a></li>
- <li><a href="building_view.html#text_rendering">3.4.5 Rendering Text</a></li>
- </ul></li>
- <li><a href="building_view.html#presentation_frameworks">3.5 Presentation Frameworks</a></li>
+ <li><a href="building_view.html#image_rendering">3.4.1 Image Rendering Components</a></li>
+ <li><a href="building_view.html#text_rendering">3.4.2 Rendering Text</a></li>
+ </ul>
+ </li>
</ul></li>
<li><a href="building_controller.html">4. Building Controller Components</a>
Modified: struts/el/trunk/xdocs/index.xml
URL: http://svn.apache.org/viewcvs/struts/el/trunk/xdocs/index.xml?rev=332294&r1=332293&r2=332294&view=diff
==============================================================================
--- struts/el/trunk/xdocs/index.xml (original)
+++ struts/el/trunk/xdocs/index.xml Thu Nov 10 05:45:21 2005
@@ -1,13 +1,29 @@
<?xml version="1.0"?>
-<document url="index.html">
+<!--
+Copyright 1999-2005 The Apache Software Foundation
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
- <properties>
- <title>Struts EL Extension</title>
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+<!--
+// ======================================================================== 78
+-->
+<document>
+<properties>
+ <title>Welcome</title>
</properties>
<body>
- <section name="Struts EL Welcome">
+ <section name="Welcome to Struts EL">
<a name="welcome"/>
<p>
Modified: struts/el/trunk/xdocs/navigation.xml
URL: http://svn.apache.org/viewcvs/struts/el/trunk/xdocs/navigation.xml?rev=332294&r1=332293&r2=332294&view=diff
==============================================================================
--- struts/el/trunk/xdocs/navigation.xml (original)
+++ struts/el/trunk/xdocs/navigation.xml Thu Nov 10 05:45:21 2005
@@ -1,7 +1,12 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<project name="Struts EL">
+<title>Apache Struts - Struts EL</title>
<body>
- <menu name="Taglib Reference">
+ <menu name="Struts EL Taglib">
+ <item name="Welcome" href="index.html"/>
+ <item name="FAQ" href="struts-el.html"/>
+ </menu>
+ <menu name="Struts EL Taglib Reference">
<item name="Bean EL" href="tagreference-struts-bean-el.html"/>
<item name="HTML EL" href="tagreference-struts-html-el.html"/>
<item name="Logic EL" href="tagreference-struts-logic-el.html"/>
@@ -9,7 +14,7 @@
</menu>
<menu name="Quick Links">
<item
- name="Struts"
+ name="Apache Struts Home"
href="../index.html"/>
</menu>
</body>
Modified: struts/el/trunk/xdocs/struts-el.xml
URL: http://svn.apache.org/viewcvs/struts/el/trunk/xdocs/struts-el.xml?rev=332294&r1=332293&r2=332294&view=diff
==============================================================================
--- struts/el/trunk/xdocs/struts-el.xml (original)
+++ struts/el/trunk/xdocs/struts-el.xml Thu Nov 10 05:45:21 2005
@@ -1,10 +1,97 @@
<?xml version="1.0"?>
-<document url="./struts-el.xml">
+<!--
+Copyright 1999-2005 The Apache Software Foundation
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+<!--
+// ======================================================================== 78
+-->
+<document>
<properties>
-<title>Struts EL Extension - Apache Struts</title>
+<title>FAQ</title>
</properties>
<body>
<section href="faq" name="Struts EL Extension">
+
+ <subsection name="Preface">
+
+ <p>
+ The <strong>Struts-EL</strong> tag library is a contributed library in
+ the Struts distribution.
+ It represents an integration of the Struts tag library with the JavaServer
+ Pages Standard Tag Library, or at least the "expression evaluation"
+ engine that is used by the JSTL.
+ </p>
+
+ <p>
+ The base Struts tag library contains tags which rely on the evaluation
+ of "rtexprvalue"s (runtime scriptlet expressions) to evaluate dynamic
+ attribute values. For instance, to print a message from a properties
+ file based on a resource key, you would use the
+ <code>bean:write</code> tag, perhaps like this:</p>
+ <source>
+ <![CDATA[<bean:message key='<%= stringvar %>'/>]]>
+ </source>
+
+ <p>
+ This assumes that <code>stringvar</code> exists as a JSP scripting
+ variable. If you're using the <strong>Struts-EL</strong> library, the
+ reference looks very similar, but slightly different, like this:</p>
+ <source>
+ <![CDATA[<bean-el:message key="${stringvar}"/>]]>
+ </source>
+
+ <p>
+ If you want to know how to properly use the <strong>Struts-EL</strong>
+ tag library, there are two important things you need to know:
+ </p>
+
+ <ul>
+
+ <li>
+ The Struts tag library
+ </li>
+
+ <li>
+ The JavaServer Pages Standard tag library
+ </li>
+
+ </ul>
+
+
+ <p>
+ Once you understand how to use these two, consider Struts tag
+ attribute values being evaluated the same way the JSTL tag attribute
+ values are.
+ Past that, there is very little else you need to know to effectively use
+ the <strong>Struts-EL</strong> tag library.
+ </p>
+
+ <p>
+ Although the <strong>Struts-EL</strong> tag library is a direct "port"
+ of the tags from the Struts tag library, not all of the tags in the
+ Struts tag library were implemented in the <strong>Struts-EL</strong>
+ tag library.
+ This was the case if it was clear that the functionality of a particular
+ Struts tag could be entirely fulfilled by a tag in the JSTL.
+ It is assumed that developers will want to use the
+ <strong>Struts-EL</strong> tag library along with the JSTL, so it is
+ reasonable to assume that they will use tags from the JSTL if they
+ fill their needs.
+ </p>
+
+</subsection>
+
<subsection name="Introduction">
Modified: struts/taglib/trunk/xdocs/building_view.xml
URL: http://svn.apache.org/viewcvs/struts/taglib/trunk/xdocs/building_view.xml?rev=332294&r1=332293&r2=332294&view=diff
==============================================================================
--- struts/taglib/trunk/xdocs/building_view.xml (original)
+++ struts/taglib/trunk/xdocs/building_view.xml Thu Nov 10 05:45:21 2005
@@ -19,13 +19,13 @@
<document>
<properties>
- <title>Building View Components</title>
+ <title>How to Build View Components</title>
</properties>
<body>
-<section name="3. Building View Components">
+<section name="How to Build View Components">
-<subsection name="3.1 Overview">
+<subsection name="Overview">
<p>
This chapter focuses on the task of building the <em>View</em> components
@@ -40,7 +40,7 @@
</subsection>
-<subsection name="3.2 Internationalized Messages">
+<subsection name="Internationalized Messages">
<p>
A few years ago, application developers could count on having to support
@@ -217,7 +217,7 @@
</subsection>
-<subsection name="3.3 Forms and FormBean Interactions">
+<subsection name="Forms and FormBean Interactions">
<p>
<strong>Note:</strong> While the examples given here use JSP and custom tags,
@@ -287,7 +287,7 @@
</subsection>
-<subsection name="3.3.1 Indexed and Mapped Properties">
+<subsection name="Indexed and Mapped Properties">
<p>
Property references in JSP pages using the Struts framework can reference
@@ -311,7 +311,7 @@
</p>
</subsection>
-<subsection name="3.3.2 Input Field Types Supported">
+<subsection name="Input Field Types Supported">
<p>
Struts defines HTML tags for all of the following types of input fields,
@@ -375,7 +375,7 @@
</subsection>
-<subsection name="3.3.3 Other Useful Presentation Tags">
+<subsection name="Other Useful Presentation Tags">
<p>
There are several tags useful for creating presentations, consult the
@@ -433,7 +433,7 @@
</subsection>
-<subsection name="3.3.4 Automatic Form Validation">
+<subsection name="Automatic Form Validation">
<p>
In addition to the form and bean interactions described above, Struts
@@ -497,70 +497,13 @@
</subsection>
-<subsection name="3.3.5 The Struts Validator">
-
- <p>
- Configuring the Validator to perform form validation is easy.
- </p>
- <ol>
-
- <li>
- The ActionForm bean must extend ValidatorForm
- </li>
- <li>
- The form's JSP must include the
- <a href="struts-html.html"><html:javascript></a> tag for client
- side validation.
- </li>
- <li>
- You must define the validation rules in an xml file like this:
-
-<source><![CDATA[
-<form-validation>
-<formset>
-<form name="logonForm">
- <field property="username" depends="required">
- <msg name="required" key="error.username"/>
- </field>
-</form>
-</formset>
-</form-validation>
-]]></source>
-The msg element points to the message resource key to use when generating the error message.
-</li>
-<li>Lastly, you must enable the ValidatorPlugin in the struts-config.xml file like this:
-<source><![CDATA[
-<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
-<set-property
-property="pathnames"
-value="/WEB-INF/validator-rules.xml,
- /WEB-INF/validation.xml"/>
-</plug-in>
-]]></source>
-
- </li>
- </ol>
-
- <p>
- <strong>Note:</strong> If your required form property is one of the Java object representations of
- primitive types (ie. java.lang.Integer), you must set the ActionServlet's convertNull init.
- parameter to true. Failing to do this will result in the required validation not being performed
- on that field because it will default to 0.
- </p>
-
- <p>
- For more about the Struts Validator, see the
- <a href="./dev_validator.html">Developers Guide</a>.
- </p>
-
-</subsection>
-
-<subsection name="3.4 Other Presentation Techniques">
+<a name="other_presentations"/>
+<subsection name="Other Presentation Techniques">
<p>
Although the look and feel of your application can be completely
- constructed based on the standard capabilities of JSP and the Struts
- custom tag library, you should consider employing other techniques that
+ constructed based on the standard capabilities of JSP and Struts
+ Taglibs, you should consider employing other techniques that
will improve component reuse, reduce maintenance efforts, and/or reduce
errors.
Several options are discussed in the following sections.
@@ -568,14 +511,14 @@
</subsection>
-<subsection name="3.4.1 Application-Specific Custom Tags">
+<subsection name="Application-Specific Custom Tags">
<p>
- Beyond using the custom tags provided by the Struts library, it is easy
+ Beyond using the custom tags provided by the Struts JSP tags, it is easy
to create tags that are specific to the application you are building, to
- assist in creating the user interface. The MailReader example application included with
- Struts illustrates this principle by creating the following tags unique to
- the implementation of this application:
+ assist in creating the user interface. The MailReader example application
+ included with Struts Applications illustrates this principle by creating
+ the following tags unique to the implementation of this application:
</p>
<ul>
@@ -601,7 +544,7 @@
</p>
</subsection>
-<subsection name="3.4.2 Page Composition With Includes">
+<subsection name="Page Composition With Includes">
<p>
Creating the entire presentation of a page in one JSP file (with custom
@@ -682,7 +625,7 @@
</subsection>
-<subsection name="3.4.3 Page Composition With Tiles">
+<subsection name="Page Composition With Tiles">
<p>
Tiles is a powerful templating library that allows you to construct views
@@ -773,136 +716,6 @@
</subsection>
- <subsection name="3.4.4 Image Rendering Components">
-
- <p>
- Some applications require dynamically generated images, like the
- price charts on a stock reporting site.
- Two different approaches are commonly used to meet these
- requirements:
- </p>
-
- <ul>
-
- <li>
- Render a hyperlink with a URL that executes a servlet request.
- The servlet will use a graphics library to render the graphical image,
- set the content type appropriately (such as to
- <code>image/gif</code>), and send back the bytes of that image to the
- browser, which will display them just as if it had received a static
- file.
- </li>
-
- <li>
- Render the HTML code necessary to download a Java applet that
- creates the required graph.
- You can configure the graph by setting appropriate initialization
- parameters for the applet in the rendered code, or you can have the
- applet make its own connection to the server to receive
- these parameters.
- </li>
-
- </ul>
-
- </subsection>
-
- <subsection name="3.4.5 Rendering Text">
-
- <p>
- Some applications require dynamically generated text or markup,
- such as XML.
- If a complete page is being rendered, and can be output using a
- PrintWriter, this is very easy to do from an Action:
- </p>
-
-<source><![CDATA[
-response.setContentType("text/plain"); // or text/xml
-PrintWriter writer = response.getWriter();
-// use writer to render text
-return(null);
-]]></source>
-
-</subsection>
-
- <subsection name="3.4.6 The Struts-EL Tag Library">
-
- <p>
- The <strong>Struts-EL</strong> tag library is a contributed library in
- the Struts distribution.
- It represents an integration of the Struts tag library with the JavaServer
- Pages Standard Tag Library, or at least the "expression evaluation"
- engine that is used by the JSTL.
- </p>
-
- <p>
- The base Struts tag library contains tags which rely on the evaluation
- of "rtexprvalue"s (runtime scriptlet expressions) to evaluate dynamic
- attribute values. For instance, to print a message from a properties
- file based on a resource key, you would use the
- <code>bean:write</code> tag, perhaps like this:</p>
- <source>
- <![CDATA[<bean:message key='<%= stringvar %>'/>]]>
- </source>
-
- <p>
- This assumes that <code>stringvar</code> exists as a JSP scripting
- variable. If you're using the <strong>Struts-EL</strong> library, the
- reference looks very similar, but slightly different, like this:</p>
- <source>
- <![CDATA[<bean-el:message key="${stringvar}"/>]]>
- </source>
-
- <p>
- If you want to know how to properly use the <strong>Struts-EL</strong>
- tag library, there are two important things you need to know:
- </p>
-
- <ul>
-
- <li>
- The Struts tag library
- </li>
-
- <li>
- The JavaServer Pages Standard tag library
- </li>
-
- </ul>
-
-
- <p>
- Once you understand how to use these two, consider Struts tag
- attribute values being evaluated the same way the JSTL tag attribute
- values are.
- Past that, there is very little else you need to know to effectively use
- the <strong>Struts-EL</strong> tag library.
- </p>
-
- <p>
- Although the <strong>Struts-EL</strong> tag library is a direct "port"
- of the tags from the Struts tag library, not all of the tags in the
- Struts tag library were implemented in the <strong>Struts-EL</strong>
- tag library.
- This was the case if it was clear that the functionality of a particular
- Struts tag could be entirely fulfilled by a tag in the JSTL.
- It is assumed that developers will want to use the
- <strong>Struts-EL</strong> tag library along with the JSTL, so it is
- reasonable to assume that they will use tags from the JSTL if they
- fill their needs.
- </p>
-
- <p>
- For more see, <a href="../faqs/struts-el.html">Struts-El Extension</a> in the FAQ/HOWTO section.
- </p>
-
-</subsection>
-
-<subsection>
- <p class="right">
- Next: <a href="building_controller.html">Building Controller
- Components</a>
- </p>
-</subsection>
</section>
</body>
Modified: struts/taglib/trunk/xdocs/navigation.xml
URL: http://svn.apache.org/viewcvs/struts/taglib/trunk/xdocs/navigation.xml?rev=332294&r1=332293&r2=332294&view=diff
==============================================================================
--- struts/taglib/trunk/xdocs/navigation.xml (original)
+++ struts/taglib/trunk/xdocs/navigation.xml Thu Nov 10 05:45:21 2005
@@ -1,17 +1,23 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<project name="Apache Struts - Struts">
-<title>Apache Struts - Struts Taglib</title>
+<project name="Struts JSP Taglib">
+<title>Apache Struts - Struts JSP Taglib</title>
<body>
- <menu name="Struts Taglib Reference">
+ <menu name="Struts JSP Taglib Guides">
<item name="Bean" href="dev_bean.html"/>
<item name="HTML" href="dev_html.html"/>
<item name="Logic" href="dev_logic.html"/>
<item name="Nested" href="dev_nested.html"/>
</menu>
- <menu name="Struts Taglib FAQs and HOWTOs">
+ <menu name="FAQs and HOWTOs">
<item name="Building View Components" href="building_view.html"/>
<item name="Indexed Properties" href="indexedprops.html"/>
<item name="Secure Socket Layer and Web Applications " href="ssl.html"/>
+ </menu>
+ <menu name="Struts JSP Taglib Reference">
+ <item name="Bean" href="tagreference-struts-bean.html"/>
+ <item name="HTML" href="tagreference-struts-html.html"/>
+ <item name="Logic" href="tagreference-struts-logic.html"/>
+ <item name="Nested" href="tagreference-struts-nested.html"/>
</menu>
<menu name="Quick Links">
<item
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org