[CONF] Confluence Changes in the last 24 hours

2007-07-11 Thread confluence
-
This is a daily summary of all recent changes in Confluence.

-
Updated Spaces:
-

Apache Felix (FELIX) http://cwiki.apache.org/confluence/display/FELIX
|
|-Pages Added or Edited in This Space
 |-- Apache Felix OSGi Core was created by [EMAIL PROTECTED] (09:29 AM).
 |   http://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+OSGi+Core
 |-- Apache Felix Shell TUI was created by [EMAIL PROTECTED] (09:13 AM).
 |   http://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+Shell+TUI
 |-- Apache Felix OSGi Bundle Repository (OBR) was last edited by [EMAIL 
PROTECTED] (08:21 AM).
 |   
http://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+OSGi+Bundle+Repository+%28OBR%29
 |-- Apache Felix Usage Documentation was last edited by [EMAIL PROTECTED] 
(07:07 AM).
 |   
http://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+Usage+Documentation
 |-- Apache Felix Shell Service was last edited by [EMAIL PROTECTED] (07:00 AM).
 |   http://cwiki.apache.org/confluence/display/FELIX/Apache+Felix+Shell+Service

Apache Geronimo Documentation (geronimo) 
http://cwiki.apache.org/confluence/display/geronimo
|
|-Pages Added or Edited in This Space
 |-- Tips for writing and formatting documentation was last edited by hcunico 
(05:47 AM).
 |   
http://cwiki.apache.org/confluence/display/geronimo/Tips+for+writing+and+formatting+documentation

Apache Geronimo (GMOxSITE) http://cwiki.apache.org/confluence/display/GMOxSITE
|
|-Pages Added or Edited in This Space
 |-- Committers was last edited by dain (11:21 AM).
 |   http://cwiki.apache.org/confluence/display/GMOxSITE/Committers

Apache CXF 2.0 Documentation (CXF20DOC) 
http://cwiki.apache.org/confluence/display/CXF20DOC
 |
 |-New Comments in This Space
 |-- 
http://cwiki.apache.org/confluence/display/CXF20DOC/A+simple+JAX-WS+service (1)

Apache Directory SandBox (DIRxSBOX) 
http://cwiki.apache.org/confluence/display/DIRxSBOX
|
|-Pages Added or Edited in This Space
 |-- Kerberos RFC Support was last edited by erodriguez (04:50 PM).
 |   http://cwiki.apache.org/confluence/display/DIRxSBOX/Kerberos+RFC+Support

Apache ServiceMix (SM) http://cwiki.apache.org/confluence/display/SM
|
|-Pages Added or Edited in This Space
 |-- FTP was last edited by gertvanthienen (10:54 AM).
 |   http://cwiki.apache.org/confluence/display/SM/FTP
 |-- RSS was last edited by gertvanthienen (10:47 AM).
 |   http://cwiki.apache.org/confluence/display/SM/RSS

Apache Struts 2 Documentation (WW) http://cwiki.apache.org/confluence/display/WW
 |
 |-New Comments in This Space
 |-- http://cwiki.apache.org/confluence/pages/viewpage.action?pageId=33168 (2)

Apache Cayenne Website (CAYSITE) 
http://cwiki.apache.org/confluence/display/CAYSITE
|
|-Pages Added or Edited in This Space
 |-- Running Unit Tests was last edited by andrus (10:29 AM).
 |   http://cwiki.apache.org/confluence/display/CAYSITE/Running+Unit+Tests

Apache MINA (MINA) http://cwiki.apache.org/confluence/display/MINA
|
|-Pages Added or Edited in This Space
 |-- Related Projects was last edited by trustin (01:27 AM).
 |   http://cwiki.apache.org/confluence/display/MINA/Related+Projects

Apache Web services (WS) http://cwiki.apache.org/confluence/display/WS
|
|-Pages Added or Edited in This Space
 |-- Sandesha Architecture Home was created by [EMAIL PROTECTED] (04:02 AM).
 |   http://cwiki.apache.org/confluence/display/WS/Sandesha+Architecture+Home
 |-- CreateSequence model was created by [EMAIL PROTECTED] (06:05 AM).
 |   http://cwiki.apache.org/confluence/display/WS/CreateSequence+model
 |-- Retransmission and Acknowledgment model was created by [EMAIL PROTECTED] 
(04:36 AM).
 |   
http://cwiki.apache.org/confluence/display/WS/Retransmission+and+Acknowledgment+model
 |-- Sandesha Architecture Holder was created by [EMAIL PROTECTED] (03:41 AM).
 |   http://cwiki.apache.org/confluence/display/WS/Sandesha+Architecture+Holder
 |-- Sandesha Navigation was created by [EMAIL PROTECTED] (02:06 AM).
 |   http://cwiki.apache.org/confluence/display/WS/Sandesha+Navigation
 |-- Apache Sandesha - Main Page was created by [EMAIL PROTECTED] (02:20 AM).
 |   http://cwiki.apache.org/confluence/display/WS/Apache+Sandesha+-+Main+Page
 |-- Apache Sandesha was created by [EMAIL PROTECTED] (01:56 AM).
 |   http://cwiki.apache.org/confluence/display/WS/Apache+Sandesha

Apache Yoko Project Website (YOKO) 
http://cwiki.apache.org/confluence/display/YOKO
|
|-Pages Added or Edited in This Space
 |-- Index was last edited by bravi (10:04 AM).
 |   http://cwiki.apache.org/confluence/display/YOKO/Index
 |-- Project Status was last edited by bravi (09:56 AM).
 |   http://cwiki.apache.org/confluence/display/YOKO/Project+Status

Apache Wicket (WICKET) http://cwiki.apache.org/confluence/display/WICKET
|
|-Pages Added or Edited in This Space
 |-- Index was last edite

svn commit: r555289 - in /struts/struts2/trunk/core/src/main: java/org/apache/struts2/StrutsConstants.java java/org/apache/struts2/views/freemarker/FreemarkerManager.java resources/org/apache/struts2/

2007-07-11 Thread musachy
Author: musachy
Date: Wed Jul 11 07:44:54 2007
New Revision: 555289

URL: http://svn.apache.org/viewvc?view=rev&rev=555289
Log:
WW-2012 Freemarker caching of BeanWrapper models

Modified:

struts/struts2/trunk/core/src/main/java/org/apache/struts2/StrutsConstants.java

struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java

struts/struts2/trunk/core/src/main/resources/org/apache/struts2/default.properties

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/StrutsConstants.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/StrutsConstants.java?view=diff&rev=555289&r1=555288&r2=555289
==
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/StrutsConstants.java 
(original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/StrutsConstants.java 
Wed Jul 11 07:44:54 2007
@@ -78,6 +78,9 @@
 
 /** Cache Freemarker templates */
 public static final String STRUTS_FREEMARKER_CACHE_TEMPLATES = 
"struts.freemarker.templatesCache";
+
+/** Cache model instances at BeanWrapper level */
+public static final String STRUTS_FREEMARKER_BEANWRAPPER_CACHE = 
"struts.freemarker.beanwrapperCache";
 
 /** org.apache.struts2.views.velocity.VelocityManager implementation class 
*/
 public static final String STRUTS_VELOCITY_MANAGER_CLASSNAME = 
"struts.velocity.manager.classname";

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java?view=diff&rev=555289&r1=555288&r2=555289
==
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java
 (original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/freemarker/FreemarkerManager.java
 Wed Jul 11 07:44:54 2007
@@ -124,6 +124,7 @@
 
 private String encoding;
 private boolean altMapWrapper;
+private boolean cacheBeanWrapper;
 private Map tagLibraries;
 
 @Inject(StrutsConstants.STRUTS_I18N_ENCODING)
@@ -136,6 +137,11 @@
 altMapWrapper = "true".equals(val);
 }
 
+@Inject(StrutsConstants.STRUTS_FREEMARKER_BEANWRAPPER_CACHE)
+public void setCacheBeanWrapper(String val) {
+cacheBeanWrapper = "true".equals(val);
+}
+
 @Inject
 public void setContainer(Container container) {
 Map map = new HashMap();
@@ -236,7 +242,9 @@
 }
 
 protected BeansWrapper getObjectWrapper() {
-return new StrutsBeanWrapper(altMapWrapper);
+StrutsBeanWrapper wrapper = new StrutsBeanWrapper(altMapWrapper);
+wrapper.setUseCache(cacheBeanWrapper);
+return wrapper;
 }
 
 /**

Modified: 
struts/struts2/trunk/core/src/main/resources/org/apache/struts2/default.properties
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/default.properties?view=diff&rev=555289&r1=555288&r2=555289
==
--- 
struts/struts2/trunk/core/src/main/resources/org/apache/struts2/default.properties
 (original)
+++ 
struts/struts2/trunk/core/src/main/resources/org/apache/struts2/default.properties
 Wed Jul 11 07:44:54 2007
@@ -149,6 +149,9 @@
 ### Has the same effect as copying the templates under WEB_APP/templates
 struts.freemarker.templatesCache=false
 
+### Enables caching of models on the BeanWrapper
+struts.freemarker.beanwrapperCache=false
+
 ### See the StrutsBeanWrapper javadocs for more information
 struts.freemarker.wrapper.altMap=true
 




svn commit: r555291 - in /struts/struts2/trunk/core/src/main/java/org/apache/struts2: StrutsConstants.java components/template/FreemarkerTemplateEngine.java config/BeanSelectionProvider.java

2007-07-11 Thread musachy
Author: musachy
Date: Wed Jul 11 07:48:26 2007
New Revision: 555291

URL: http://svn.apache.org/viewvc?view=rev&rev=555291
Log:
Rename FreeMarker templates cache constant to match other caching constant names

Modified:

struts/struts2/trunk/core/src/main/java/org/apache/struts2/StrutsConstants.java

struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/template/FreemarkerTemplateEngine.java

struts/struts2/trunk/core/src/main/java/org/apache/struts2/config/BeanSelectionProvider.java

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/StrutsConstants.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/StrutsConstants.java?view=diff&rev=555291&r1=555290&r2=555291
==
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/StrutsConstants.java 
(original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/StrutsConstants.java 
Wed Jul 11 07:48:26 2007
@@ -77,7 +77,7 @@
 public static final String STRUTS_FREEMARKER_MANAGER_CLASSNAME = 
"struts.freemarker.manager.classname";
 
 /** Cache Freemarker templates */
-public static final String STRUTS_FREEMARKER_CACHE_TEMPLATES = 
"struts.freemarker.templatesCache";
+public static final String STRUTS_FREEMARKER_TEMPLATES_CACHE = 
"struts.freemarker.templatesCache";
 
 /** Cache model instances at BeanWrapper level */
 public static final String STRUTS_FREEMARKER_BEANWRAPPER_CACHE = 
"struts.freemarker.beanwrapperCache";

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/template/FreemarkerTemplateEngine.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/template/FreemarkerTemplateEngine.java?view=diff&rev=555291&r1=555290&r2=555291
==
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/template/FreemarkerTemplateEngine.java
 (original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/template/FreemarkerTemplateEngine.java
 Wed Jul 11 07:48:26 2007
@@ -212,7 +212,7 @@
  * @param caching true if the template engine should cache freemarker 
template
  * internally
  */
-@Inject(StrutsConstants.STRUTS_FREEMARKER_CACHE_TEMPLATES)
+@Inject(StrutsConstants.STRUTS_FREEMARKER_TEMPLATES_CACHE)
 public void setCacheTemplates(String cacheTemplates) {
 freemarkerCaching = "true".equals(cacheTemplates);
 }

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/config/BeanSelectionProvider.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/config/BeanSelectionProvider.java?view=diff&rev=555291&r1=555290&r2=555291
==
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/config/BeanSelectionProvider.java
 (original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/config/BeanSelectionProvider.java
 Wed Jul 11 07:48:26 2007
@@ -163,7 +163,7 @@
 if 
("true".equalsIgnoreCase(props.getProperty(StrutsConstants.STRUTS_DEVMODE))) {
 props.setProperty(StrutsConstants.STRUTS_I18N_RELOAD, "true");
 props.setProperty(StrutsConstants.STRUTS_CONFIGURATION_XML_RELOAD, 
"true");
-
props.setProperty(StrutsConstants.STRUTS_FREEMARKER_CACHE_TEMPLATES, "false");
+
props.setProperty(StrutsConstants.STRUTS_FREEMARKER_TEMPLATES_CACHE, "false");
 // Convert struts properties into ones that xwork expects
 props.setProperty("devMode", "true");
 } else {




svn commit: r555302 - in /struts/struts2/trunk/core/src/main/java/org/apache/struts2: components/ views/jsp/iterator/

2007-07-11 Thread musachy
Author: musachy
Date: Wed Jul 11 08:25:29 2007
New Revision: 555302

URL: http://svn.apache.org/viewvc?view=rev&rev=555302
Log:
WW-2027 Tags that push values into the value stack should use the "var" 
attribute to specify the name of the variable
* Use 'var' instead of 'id' on examples

Modified:

struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/AppendIterator.java

struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Bean.java

struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/ComboBox.java

struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/IteratorComponent.java

struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/MergeIterator.java

struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Push.java

struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Radio.java

struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/SortIteratorTag.java

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/AppendIterator.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/AppendIterator.java?view=diff&rev=555302&r1=555301&r2=555302
==
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/AppendIterator.java
 (original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/AppendIterator.java
 Wed Jul 11 08:25:29 2007
@@ -100,7 +100,7 @@
  * 
  *
  * 
- * 
+ * 
  *  
  *  
  *  

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Bean.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Bean.java?view=diff&rev=555302&r1=555301&r2=555302
==
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Bean.java 
(original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/Bean.java 
Wed Jul 11 08:25:29 2007
@@ -38,7 +38,7 @@
  * Instantiates a class that conforms to the JavaBeans specification. This 
tag has a body which can contain
  * a number of [EMAIL PROTECTED] Param} elements to set any mutator methods on 
that class.
  * 
- * If the id attribute is set on the BeanTag, it will place the 
instantiated bean into the
+ * If the var attribute is set on the BeanTag, it will place the 
instantiated bean into the
  * stack's Context.
  * 
  * 
@@ -46,7 +46,7 @@
  *
  * 
  * 
- *  id - the stack's context id (if supplied) that the created bean 
will be store under
+ *  var - the stack's context name (if supplied) that the created bean 
will be store under
  *  name* - the class name of the bean to be instantiated (must 
respect JavaBean specification)
  * 
  * 
@@ -57,13 +57,13 @@
  * 
  * 
  * <-- in freemarker form -->
- * [EMAIL PROTECTED] name="org.apache.struts2.example.counter.SimpleCounter" 
id="counter"]
+ * [EMAIL PROTECTED] name="org.apache.struts2.example.counter.SimpleCounter" 
var="counter"]
  *   [s:param name="foo" value="BAR"/]
  *   The value of foo is : [s:property value="foo"/], when inside the bean 
tag.
  * [/s:bean]
  *
  * <-- in jsp form -->
- * 
+ * 
  *   
  *   The value of foot is : , when inside the 
bean tag 
*
Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/ComboBox.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/ComboBox.java?view=diff&rev=555302&r1=555301&r2=555302 == --- struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/ComboBox.java (original) +++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/ComboBox.java Wed Jul 11 08:25:29 2007 @@ -55,7 +55,7 @@ * * JSP: * <-- Example One --> - * + * * * * Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/IteratorComponent.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/components/IteratorComponent.java?view=diff&rev=555302&r1=555301&r2=555302 ===

svn commit: r555339 - /struts/struts2/trunk/core/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelper.java

2007-07-11 Thread musachy
Author: musachy
Date: Wed Jul 11 10:00:33 2007
New Revision: 555339

URL: http://svn.apache.org/viewvc?view=rev&rev=555339
Log:
WW-1864 Ensure to retain the order of parameters
* Component was already using a LinkedHashMap

Modified:

struts/struts2/trunk/core/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelper.java

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelper.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelper.java?view=diff&rev=555339&r1=555338&r2=555339
==
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelper.java
 (original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/portlet/util/PortletUrlHelper.java
 Wed Jul 11 10:00:33 2007
@@ -22,8 +22,8 @@
 
 import java.io.UnsupportedEncodingException;
 import java.net.URLEncoder;
-import java.util.HashMap;
 import java.util.Iterator;
+import java.util.LinkedHashMap;
 import java.util.Map;
 import java.util.StringTokenizer;
 
@@ -230,7 +230,7 @@
 public static Map ensureParamsAreStringArrays(Map params) {
 Map result = null;
 if (params != null) {
-result = new HashMap(params.size());
+result = new LinkedHashMap(params.size());
 Iterator it = params.keySet().iterator();
 while (it.hasNext()) {
 Object key = it.next();




svn commit: r555347 - /struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/xslt/XSLTResult.java

2007-07-11 Thread jholmes
Author: jholmes
Date: Wed Jul 11 11:04:23 2007
New Revision: 555347

URL: http://svn.apache.org/viewvc?view=rev&rev=555347
Log:
Cleanup misspellings, bad english, etc.

Modified:

struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/xslt/XSLTResult.java

Modified: 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/xslt/XSLTResult.java
URL: 
http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/xslt/XSLTResult.java?view=diff&rev=555347&r1=555346&r2=555347
==
--- 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/xslt/XSLTResult.java
 (original)
+++ 
struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/xslt/XSLTResult.java
 Wed Jul 11 11:04:23 2007
@@ -55,31 +55,31 @@
 /**
  * 
  *
- * XSLTResult uses XSLT to transform action object to XML. Recent version has
- * been specifically modified to deal with Xalan flaws. When using Xalan you 
may
- * notice that even though you have very minimal stylesheet like this one
+ * XSLTResult uses XSLT to transform an action object to XML. The recent 
version
+ * has been specifically modified to deal with Xalan flaws. When using Xalan 
you
+ * may notice that even though you have a very minimal stylesheet like this one
  * 
  * 
- *   
+ *   
  * 
  *
  * 
- * then Xalan would still iterate through every property of your action and 
it's
- * all descendants.
+ * Xalan would still iterate through every property of your action and all
+ * its descendants.
  * 
  *
  * 
- * If you had double-linked objects then Xalan would work forever analysing
+ * If you had double-linked objects, Xalan would work forever analysing an
  * infinite object tree. Even if your stylesheet was not constructed to process
- * them all. It's becouse current Xalan eagerly and extensively converts
- * everything to it's internal DTM model before further processing.
+ * them all. It's because the current Xalan eagerly and extensively converts
+ * everything to its internal DTM model before further processing.
  * 
  *
  * 
- * Thet's why there's a loop eliminator added that works by indexing every
+ * That's why there's a loop eliminator added that works by indexing every
  * object-property combination during processing. If it notices that some
- * object's property were already walked through, it doesn't get any deeper.
- * Say, you have two objects x and y with the following properties set
+ * object's property was already walked through, it doesn't go any deeper.
+ * Say you have two objects, x and y, with the following properties set
  * (pseudocode):
  * 
  * 
@@ -89,7 +89,7 @@
  * action.x=x;
  *
  * 
- * Due to that modification the resulting XML document based on x would be:
+ * Due to that modification, the resulting XML document based on x would be:
  * 
  *
  * 
@@ -100,12 +100,12 @@
  * 
  *
  * 
- * Without it there would be an endless x/y/x/y/x/y/... elements.
+ * Without it there would be endless x/y/x/y/x/y/... elements.
  * 
  *
  * 
  * The XSLTResult code tries also to deal with the fact that DTM model is built
- * in a manner that childs are processed before siblings. The result is that if
+ * in a manner that children are processed before siblings. The result is that 
if
  * there is object x that is both set in action's x property, and very deeply
  * under action's a property then it would only appear under a, not under x.
  * That's not what we expect, and that's why XSLTResult allows objects to 
repeat
@@ -114,8 +114,8 @@
  *
  * 
  * Sometimes the object mesh is still very dense and you may notice that even
- * though you have relatively simple stylesheet execution takes a tremendous
- * amount of time. To help you to deal with that obstacle of Xalan you may
+ * though you have a relatively simple stylesheet, execution takes a tremendous
+ * amount of time. To help you to deal with that obstacle of Xalan, you may
  * attach regexp filters to elements paths (xpath).
  * 
  *
@@ -129,7 +129,7 @@
  *   
  *   Hello  how are you?
  *   
- *   
+ *   
  * 
  * 
  *




svn commit: r555462 - /struts/struts1/trunk/core/src/main/java/org/apache/struts/action/ActionMapping.java

2007-07-11 Thread pbenedict
Author: pbenedict
Date: Wed Jul 11 19:17:11 2007
New Revision: 555462

URL: http://svn.apache.org/viewvc?view=rev&rev=555462
Log:
STR-2499: Add findRequiredForward

Modified:

struts/struts1/trunk/core/src/main/java/org/apache/struts/action/ActionMapping.java

Modified: 
struts/struts1/trunk/core/src/main/java/org/apache/struts/action/ActionMapping.java
URL: 
http://svn.apache.org/viewvc/struts/struts1/trunk/core/src/main/java/org/apache/struts/action/ActionMapping.java?view=diff&rev=555462&r1=555461&r2=555462
==
--- 
struts/struts1/trunk/core/src/main/java/org/apache/struts/action/ActionMapping.java
 (original)
+++ 
struts/struts1/trunk/core/src/main/java/org/apache/struts/action/ActionMapping.java
 Wed Jul 11 19:17:11 2007
@@ -65,6 +65,7 @@
  * @param forwardName Logical name of the forwarding instance to be
  *returned
  * @return The local or global forward with the specified name.
+ * @see #findRequiredForward(String)
  */
 public ActionForward findForward(String forwardName) {
 ForwardConfig config = findForwardConfig(forwardName);
@@ -73,6 +74,7 @@
 config = getModuleConfig().findForwardConfig(forwardName);
 }
 
+// TODO: remove warning since findRequiredForward takes care of use 
case? 
 if (config == null) {
 if (log.isWarnEnabled()) {
 log.warn("Unable to find '" + forwardName + "' forward.");
@@ -80,6 +82,27 @@
 }
 
 return ((ActionForward) config);
+}
+
+/**
+ * Find and return the ForwardConfig instance of this
+ * mapping, throwing an exception if not found locally or globally.
+ * 
+ * @param forwardName Logical name of the forwarding instance to be
+ *returned
+ * @return The local or global forward with the specified name.
+ * @throws IllegalStateException if the forward is not found
+ * @see #findForward(String)
+ * @since Struts 1.4
+ */
+public ActionForward findRequiredForward(String forwardName) {
+ActionForward forward = findForward(forwardName);
+if (forward == null) {
+throw new IllegalStateException(
+"Unable to find '" + forwardName + 
+"' forward of action path '" + getPath() + "'"); 
+}
+return forward;
 }
 
 /**