Repository: struts-site
Updated Branches:
  refs/heads/master 46a2618ca -> 27a47e7f8


Adds missing Alt Syntax page


Project: http://git-wip-us.apache.org/repos/asf/struts-site/repo
Commit: http://git-wip-us.apache.org/repos/asf/struts-site/commit/27a47e7f
Tree: http://git-wip-us.apache.org/repos/asf/struts-site/tree/27a47e7f
Diff: http://git-wip-us.apache.org/repos/asf/struts-site/diff/27a47e7f

Branch: refs/heads/master
Commit: 27a47e7f8b4ee49327d98587468c003b887561c8
Parents: 46a2618
Author: Lukasz Lenart <lukaszlen...@apache.org>
Authored: Thu Sep 21 12:12:40 2017 +0200
Committer: Lukasz Lenart <lukaszlen...@apache.org>
Committed: Thu Sep 21 12:12:40 2017 +0200

----------------------------------------------------------------------
 source/tag-developers/alt-syntax.md | 57 ++++++++++++++++++++++++++++++++
 source/tag-developers/index.md      |  2 +-
 2 files changed, 58 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/struts-site/blob/27a47e7f/source/tag-developers/alt-syntax.md
----------------------------------------------------------------------
diff --git a/source/tag-developers/alt-syntax.md 
b/source/tag-developers/alt-syntax.md
new file mode 100644
index 0000000..db41f97
--- /dev/null
+++ b/source/tag-developers/alt-syntax.md
@@ -0,0 +1,57 @@
+---
+layout: default
+title: Tag Developers Guide (WIP)
+---
+
+# Alt Syntax
+
+The _altSyntax_ is an option that can be defined in `struts.xml`. By default 
it is set to true and it is **strongly** 
+recommend you do not change that unless you are upgrading from WebWork 2.1.7 
or previous versions.
+
+> You can also turn on the altSyntax on a per-page basis by using the _set_ 
tag. Simply set the name _useAltSyntax_  
+> to the value _true_ . From this point on, all tags will use the altSyntax 
for the rest of the request.
+
+The altSyntax changes the behavior of how tags are interpreted. Instead of 
evaluating each tag parameter against 
+the value stack and needing single quotes to mark string literals, only marked 
expressions are evaluated.
+
+Example:
+
+the following code uses the [Tag Syntax](tag-syntax.html):
+
+```jsp
+<s:iterator value="cart.items">
+   ...
+   <s:textfield label="'Cart item No.' + #rowstatus.index + ' note'" 
+                 name="'cart.items[' + #rowstatus.index + '].note'" 
+                 value="note" />
+</s:iterator>
+```
+
+this is somewhat counter intuitive to normal HTML tag behaviour, and you get 
loads of single quotes. Now the same example 
+in altSyntax:
+
+```jsp
+<s:iterator value="cart.items">
+   ...
+   <s:textfield label="Cart item No. %{#rowstatus.index} note" 
+                 name="cart.items[%{#rowstatus.index}].note" 
+                 value="%{note}" />
+</s:iterator>
+```
+
+Only expressions enclosed with `%{}` are evaluated. The code is shorter and 
clearer, very similar to JSTL EL usage. 
+Quoting problems, eg. with javascript function calls, are avoided.
+
+In order to fully understand why this option exists and what the differences 
are, it is best to get a bit of history 
+about WebWork.
+
+> If you are _not_ upgrading from WebWork 2.1.7 or previous versions and you 
don't care about the history of WebWork's 
+> evolution, you can skip this section. See the [Tag Syntax](tag-syntax.html) 
section for more information 
+> on the standard tag syntax support
+
+
+## History
+
+In WebWork 2.1.4, the altSyntax option was introduced. The book, WebWork in 
Action, while based around WebWork 2.1.7, 
+was entirely written with the assumption that the altSyntax was enabled. As of 
WebWork 2.2, the altSyntax is turned 
+on by default and eventually the old syntax will no longer be supported and 
will be removed from the code.

http://git-wip-us.apache.org/repos/asf/struts-site/blob/27a47e7f/source/tag-developers/index.md
----------------------------------------------------------------------
diff --git a/source/tag-developers/index.md b/source/tag-developers/index.md
index b9c7efc..f352dbb 100644
--- a/source/tag-developers/index.md
+++ b/source/tag-developers/index.md
@@ -18,7 +18,7 @@ The framework offers a flexible view layer that supports 
multiple view technolog
   - [OGNL Basics](ognl-basics.html)
   - [OGNL Expression compilatio](ognl-expression-compilation.html)
 - [Tag Syntax](tag-syntax.html)
-- _Alt Syntax_ 
+- [Alt Syntax](alt-syntax.html) 
 - [JSP](jsp.html)
   + [specific tags](jsp-tags.html)
 + [FreeMarker](freemarker.html)

Reply via email to