This is an automated email from the ASF dual-hosted git repository.
git-site-role pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/struts-site.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 69a82c9 Updates production by Jenkins
69a82c9 is described below
commit 69a82c9e1d41433449ad2a7065fae8f15c41b0dd
Author: jenkins <[email protected]>
AuthorDate: Fri Oct 27 13:37:40 2017 +0000
Updates production by Jenkins
---
...=> annotation-paramter-filter-interceptor.html} | 58 +++++-------
.../annotation-workflow-interceptor.html | 67 +++++++-------
...rceptor.html => clear-session-interceptor.html} | 47 ++++------
.../cookie-provider-interceptor.html | 37 ++++----
.../create-session-interceptor.html | 37 ++------
content/core-developers/default-properties.html | 2 -
content/core-developers/interceptors.html | 100 ++++++++++++---------
content/core-developers/logger-interceptor.html | 24 +++--
...tor.html => parameter-remover-interceptor.html} | 67 +++++++-------
.../core-developers/parameters-interceptor.html | 4 +-
content/core-developers/struts-default-xml.html | 6 +-
content/core-developers/validation.html | 20 +++++
content/tag-developers/css-xhtml-theme.html | 8 --
content/tag-developers/simple-theme.html | 2 -
content/tag-developers/xhtml-theme.html | 18 ----
15 files changed, 219 insertions(+), 278 deletions(-)
diff --git a/content/core-developers/create-session-interceptor.html
b/content/core-developers/annotation-paramter-filter-interceptor.html
similarity index 80%
copy from content/core-developers/create-session-interceptor.html
copy to content/core-developers/annotation-paramter-filter-interceptor.html
index 9810e99..a5256d9 100644
--- a/content/core-developers/create-session-interceptor.html
+++ b/content/core-developers/annotation-paramter-filter-interceptor.html
@@ -7,7 +7,7 @@
<meta http-equiv="Content-Language" content="en"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
- <title>Create Session Interceptor</title>
+ <title>Annotation Parameter Filter Interceptor</title>
<link
href="//fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,400italic,600italic,700italic"
rel="stylesheet" type="text/css">
<link
href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css"
rel="stylesheet">
@@ -125,54 +125,38 @@
<article class="container">
<section class="col-md-12">
- <a href="index.html" title="back to Core Developers Guide"><< back to Core
Developers Guide</a>
- <a class="edit-on-gh"
href="https://github.com/apache/struts-site/edit/master/source/core-developers/create-session-interceptor.md"
title="Edit this page on GitHub">Edit on GitHub</a>
- <h1 id="create-session-interceptor">Create Session Interceptor</h1>
-
-<p>
- <p>
- This interceptor creates the HttpSession if it doesn't exist, also SessionMap
is recreated and put in ServletActionContext.
- </p>
-
- <p>
- This is particular useful when using the <@s.token> tag in freemarker
templates.
- The tag <b>do</b> require that a HttpSession is already created since
freemarker commits
- the response to the client immediately.
- </p>
-</p>
+ <a class="edit-on-gh"
href="https://github.com/apache/struts-site/edit/master/source/core-developers/annotation-paramter-filter-interceptor.md"
title="Edit this page on GitHub">Edit on GitHub</a>
+
+ <a href="interceptors.html" title="back to Interceptors"><< back to
Interceptors</a>
+
+ <h1 id="annotation-parameter-filter-interceptor">Annotation Parameter
Filter Interceptor</h1>
-<h2 id="parameters">Parameters</h2>
-
-<p>
- <ul>
- <li>None</li>
- </ul>
+<p>Annotation based version of <a
href="parameter-filter-interceptor.html">Parameter Filter Interceptor</a>.</p>
-</p>
+<p>This interceptor must be placed in the stack before the <a
href="parameters-interceptor.html">Parameters Interceptor</a>.
+When a parameter matches a field that is marked {@link Blocked} then it is
removed from the parameter map.</p>
-<h2 id="extending-the-interceptor">Extending the Interceptor</h2>
+<p>If an action class is marked with <code
class="highlighter-rouge">BlockByDefault</code> then all parameters are removed
unless a field on the Action exists
+and is marked with <code class="highlighter-rouge">Allowed</code>.</p>
-<p>
- <ul>
- <li>None</li>
- </ul>
+<h2 id="parameters">Parameters</h2>
-</p>
+<p>There are no parameters for this interceptor.</p>
-<h2 id="examples">Examples</h2>
+<h2 id="extending-the-interceptor">Extending the Interceptor</h2>
-<div class="highlighter-rouge"><pre class="highlight"><code>
- <span class="nt"><action</span> <span class="na">name=</span><span
class="s">"someAction"</span> <span class="na">class=</span><span
class="s">"com.examples.SomeAction"</span><span class="nt">></span>
- <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"createSession"</span><span
class="nt">/></span>
- <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"defaultStack"</span><span
class="nt">/></span>
- <span class="nt"><result</span> <span class="na">name=</span><span
class="s">"input"</span><span
class="nt">></span>input_with_token_tag.ftl<span
class="nt"></result></span>
- <span class="nt"></action></span>
+<p>There are no obvious extensions to the existing interceptor.</p>
+<h2 id="examples">Examples</h2>
+<div class="highlighter-rouge"><pre class="highlight"><code><span
class="nt"><action</span> <span class="na">name=</span><span
class="s">"exampleAction"</span> <span class="na">class=</span><span
class="s">"com.examples.ExampleAction"</span><span class="nt">></span>
+ <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"annotationParameterFilter"</span><span
class="nt">/></span>
+ <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"defaultStack"</span><span
class="nt">/></span>
+ <span class="nt"><result</span> <span class="na">name=</span><span
class="s">"success"</span><span class="nt">></span>example.jsp<span
class="nt"></result></span>
+<span class="nt"></action></span>
</code></pre>
</div>
-
</section>
</article>
diff --git a/content/core-developers/annotation-workflow-interceptor.html
b/content/core-developers/annotation-workflow-interceptor.html
index 3638a25..7f0261b 100644
--- a/content/core-developers/annotation-workflow-interceptor.html
+++ b/content/core-developers/annotation-workflow-interceptor.html
@@ -7,7 +7,7 @@
<meta http-equiv="Content-Language" content="en"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
- <title>AnnotationWorkflowInterceptor</title>
+ <title>Annotation Workflow Interceptor</title>
<link
href="//fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,400italic,600italic,700italic"
rel="stylesheet" type="text/css">
<link
href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css"
rel="stylesheet">
@@ -125,24 +125,24 @@
<article class="container">
<section class="col-md-12">
- <a href="index.html" title="back to Core Developers Guide"><< back to Core
Developers Guide</a>
<a class="edit-on-gh"
href="https://github.com/apache/struts-site/edit/master/source/core-developers/annotation-workflow-interceptor.md"
title="Edit this page on GitHub">Edit on GitHub</a>
- <h1 id="annotationworkflowinterceptor">AnnotationWorkflowInterceptor</h1>
-
-<p> <p>Invokes any annotated methods on the action. Specifically, it supports
the following
- annotations:</p>
- <ul>
- <li> @{@link Before} - will be invoked before the action method. If the
returned value is not null, it is
- returned as the action result code</li>
- <li> @{@link BeforeResult} - will be invoked after the action method but
before the result execution</li>
- <li> @{@link After} - will be invoked after the action method and result
execution</li>
- </ul>
-
- <p>There can be multiple methods marked with the same annotations, but the
order of their execution
- is not guaranteed. However, the annotated methods on the superclass chain are
guaranteed to be invoked before the
- annotated method in the current class in the case of a {@link Before}
annotations and after, if the annotations is
- {@link After}.</p>
-</p>
+
+ <a href="interceptors.html" title="back to Interceptors"><< back to
Interceptors</a>
+
+ <h1 id="annotation-workflow-interceptor">Annotation Workflow
Interceptor</h1>
+
+<p>Invokes any annotated methods on the action. Specifically, it supports the
following annotations</p>
+
+<ul>
+ <li><code class="highlighter-rouge">@Before</code> - will be invoked before
the action method. If the returned value is not null, it is returned as the
action
+result code</li>
+ <li>@<code class="highlighter-rouge">BeforeResult</code> - will be invoked
after the action method but before the result execution</li>
+ <li><code class="highlighter-rouge">@After</code> - will be invoked after
the action method and result execution</li>
+</ul>
+
+<p>There can be multiple methods marked with the same annotations, but the
order of their execution is not guaranteed.
+However, the annotated methods on the superclass chain are guaranteed to be
invoked before the annotated method in the current
+class in the case of a {@link Before} annotations and after, if the
annotations is <code class="highlighter-rouge">After</code></p>
<h2 id="examples">Examples</h2>
@@ -178,38 +178,31 @@
<span class="n">log</span> <span class="o">=</span> <span
class="n">log</span> <span class="o">+</span> <span
class="s">"-after"</span><span class="o">;</span>
<span class="o">}</span>
<span class="o">}</span>
-
</code></pre>
</div>
<p>Configure a stack in struts.xml that replaces the PrepareInterceptor with
the AnnotationWorkflowInterceptor:</p>
-<div class="highlighter-rouge"><pre class="highlight"><code>
-<interceptor-stack name="annotatedStack">
- <interceptor-ref name="static-params"/>
- <interceptor-ref name="params"/>
- <interceptor-ref name="conversionError"/>
- <interceptor-ref name="annotationWorkflow"/>
-</interceptor-stack>
-
+<div class="highlighter-rouge"><pre class="highlight"><code><span
class="nt"><interceptor-stack</span> <span class="na">name=</span><span
class="s">"annotatedStack"</span><span class="nt">></span>
+ <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"static-params"</span><span
class="nt">/></span>
+ <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"params"</span><span
class="nt">/></span>
+ <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"conversionError"</span><span
class="nt">/></span>
+ <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"annotationWorkflow"</span><span
class="nt">/></span>
+<span class="nt"></interceptor-stack></span>
</code></pre>
</div>
<p>Given an Action, AnnotatedAction, add a reference to the
AnnotationWorkflowInterceptor interceptor.</p>
-<div class="highlighter-rouge"><pre class="highlight"><code>
-<action name="AnnotatedAction" class="com.examples.AnnotatedAction">
- <interceptor-ref name="annotationWorkflow"/>
- <result name="success"
type="freemarker">good_result.ftl</result>
-</action>
-
+<div class="highlighter-rouge"><pre class="highlight"><code><span
class="nt"><action</span> <span class="na">name=</span><span
class="s">"AnnotatedAction"</span> <span class="na">class=</span><span
class="s">"com.examples.AnnotatedAction"</span><span class="nt">></span>
+ <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"annotationWorkflow"</span><span
class="nt">/></span>
+ <span class="nt"><result</span> <span class="na">name=</span><span
class="s">"success"</span> <span class="na">type=</span><span
class="s">"freemarker"</span><span class="nt">></span>good_result.ftl<span
class="nt"></result></span>
+<span class="nt"></action></span>
</code></pre>
</div>
-<p> <p>With the interceptor applied and the action executed on
<code>AnnotatedAction</code> the log
- instance variable will contain
<code>baseBefore-before-execute-beforeResult-after</code>.</p>
-</p>
-
+<p>With the interceptor applied and the action executed on <code
class="highlighter-rouge">AnnotatedAction</code> the log instance variable will
contain
+<code
class="highlighter-rouge">baseBefore-before-execute-beforeResult-after</code>.</p>
</section>
</article>
diff --git a/content/core-developers/cookie-provider-interceptor.html
b/content/core-developers/clear-session-interceptor.html
similarity index 84%
copy from content/core-developers/cookie-provider-interceptor.html
copy to content/core-developers/clear-session-interceptor.html
index 853ea18..c98278b 100644
--- a/content/core-developers/cookie-provider-interceptor.html
+++ b/content/core-developers/clear-session-interceptor.html
@@ -7,7 +7,7 @@
<meta http-equiv="Content-Language" content="en"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
- <title>CookieProvider Interceptor</title>
+ <title>Create Session Interceptor</title>
<link
href="//fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,400italic,600italic,700italic"
rel="stylesheet" type="text/css">
<link
href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css"
rel="stylesheet">
@@ -125,45 +125,32 @@
<article class="container">
<section class="col-md-12">
- <a href="index.html" title="back to Core Developers Guide"><< back to Core
Developers Guide</a>
- <a class="edit-on-gh"
href="https://github.com/apache/struts-site/edit/master/source/core-developers/cookie-provider-interceptor.md"
title="Edit this page on GitHub">Edit on GitHub</a>
- <h1 id="cookieprovider-interceptor">CookieProvider Interceptor</h1>
+ <a class="edit-on-gh"
href="https://github.com/apache/struts-site/edit/master/source/core-developers/clear-session-interceptor.md"
title="Edit this page on GitHub">Edit on GitHub</a>
+
+ <a href="interceptors.html" title="back to Interceptors"><< back to
Interceptors</a>
+
+ <h1 id="clear-session-interceptor">Clear Session Interceptor</h1>
-<p> Allows actions to send cookies to client, action must implement {@link
CookieProvider}
- You must reference this interceptor in your default stack or in action's
stack, see example below.
+<p>This interceptor clears the HttpSession.</p>
-</p>
+<h2 id="parameters">Parameters</h2>
-<p>Parameters</p>
+<p>There are no parameters for this interceptor.</p>
-<p>
- none
+<h2 id="extending-the-interceptor">Extending the Interceptor</h2>
-</p>
-
-<p>Extending the Interceptor</p>
-
-<p>
- <ul>
- <li>addCookiesToResponse - this method applies cookie created by action
to response</li>
- </ul>
-
-</p>
-
-<p>Examples</p>
-
-<div class="highlighter-rouge"><pre class="highlight"><code>
- <span class="nt"><action</span> <span class="err">...</span> <span
class="nt">></span>
- <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"defaultStack"</span><span
class="nt">/></span>
- <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"cookieProvider"</span><span
class="nt">/></span>
- ...
- <span class="nt"></action></span>
+<p>There are no obvious extensions to the existing interceptor.</p>
+<h2 id="examples">Examples</h2>
+<div class="highlighter-rouge"><pre class="highlight"><code><span
class="nt"><action</span> <span class="na">name=</span><span
class="s">"exampleAction"</span> <span class="na">class=</span><span
class="s">"com.examples.ExampleAction"</span><span class="nt">></span>
+ <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"clearSession"</span><span
class="nt">/></span>
+ <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"defaultStack"</span><span
class="nt">/></span>
+ <span class="nt"><result</span> <span class="na">name=</span><span
class="s">"success"</span><span class="nt">></span>example.jsp<span
class="nt"></result></span>
+<span class="nt"></action></span>
</code></pre>
</div>
-
</section>
</article>
diff --git a/content/core-developers/cookie-provider-interceptor.html
b/content/core-developers/cookie-provider-interceptor.html
index 853ea18..560a626 100644
--- a/content/core-developers/cookie-provider-interceptor.html
+++ b/content/core-developers/cookie-provider-interceptor.html
@@ -125,45 +125,38 @@
<article class="container">
<section class="col-md-12">
- <a href="index.html" title="back to Core Developers Guide"><< back to Core
Developers Guide</a>
<a class="edit-on-gh"
href="https://github.com/apache/struts-site/edit/master/source/core-developers/cookie-provider-interceptor.md"
title="Edit this page on GitHub">Edit on GitHub</a>
- <h1 id="cookieprovider-interceptor">CookieProvider Interceptor</h1>
+
+ <a href="interceptors.html" title="back to Interceptors"><< back to
Interceptors</a>
+
+ <h1 id="cookie-provider-interceptor">Cookie Provider Interceptor</h1>
-<p> Allows actions to send cookies to client, action must implement {@link
CookieProvider}
- You must reference this interceptor in your default stack or in action's
stack, see example below.
+<p>Allows actions to send cookies to client, action must implement <code
class="highlighter-rouge">CookieProvider</code> interface. You must reference
this
+interceptor in your default stack or in action’s stack, see example below.</p>
-</p>
+<p>This interceptor clears the HttpSession.</p>
-<p>Parameters</p>
+<h2 id="parameters">Parameters</h2>
-<p>
- none
+<ul>
+ <li><code class="highlighter-rouge">addCookiesToResponse</code> - this
method applies cookie created by action to response</li>
+</ul>
-</p>
+<h2 id="extending-the-interceptor">Extending the Interceptor</h2>
-<p>Extending the Interceptor</p>
+<p>There are no obvious extensions to the existing interceptor.</p>
-<p>
- <ul>
- <li>addCookiesToResponse - this method applies cookie created by action
to response</li>
- </ul>
+<h2 id="examples">Examples</h2>
-</p>
-
-<p>Examples</p>
-
-<div class="highlighter-rouge"><pre class="highlight"><code>
- <span class="nt"><action</span> <span class="err">...</span> <span
class="nt">></span>
+<div class="highlighter-rouge"><pre class="highlight"><code> <span
class="nt"><action</span> <span class="err">...</span> <span
class="nt">></span>
<span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"defaultStack"</span><span
class="nt">/></span>
<span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"cookieProvider"</span><span
class="nt">/></span>
...
<span class="nt"></action></span>
-
</code></pre>
</div>
-
</section>
</article>
diff --git a/content/core-developers/create-session-interceptor.html
b/content/core-developers/create-session-interceptor.html
index 9810e99..84ce8de 100644
--- a/content/core-developers/create-session-interceptor.html
+++ b/content/core-developers/create-session-interceptor.html
@@ -125,54 +125,35 @@
<article class="container">
<section class="col-md-12">
- <a href="index.html" title="back to Core Developers Guide"><< back to Core
Developers Guide</a>
<a class="edit-on-gh"
href="https://github.com/apache/struts-site/edit/master/source/core-developers/create-session-interceptor.md"
title="Edit this page on GitHub">Edit on GitHub</a>
+
+ <a href="interceptors.html" title="back to Interceptors"><< back to
Interceptors</a>
+
<h1 id="create-session-interceptor">Create Session Interceptor</h1>
-<p>
- <p>
- This interceptor creates the HttpSession if it doesn't exist, also SessionMap
is recreated and put in ServletActionContext.
- </p>
+<p>This interceptor creates the HttpSession if it doesn’t exist, also
SessionMap is recreated and put in ServletActionContext.</p>
- <p>
- This is particular useful when using the <@s.token> tag in freemarker
templates.
- The tag <b>do</b> require that a HttpSession is already created since
freemarker commits
- the response to the client immediately.
- </p>
-</p>
+<p>This is particular useful when using the <@s.token> tag in freemarker
templates. The tag <strong>do</strong> require that
+a HttpSession is already created since freemarker commits the response to the
client immediately.</p>
<h2 id="parameters">Parameters</h2>
-<p>
- <ul>
- <li>None</li>
- </ul>
-
-</p>
+<p>There are no parameters for this interceptor.</p>
<h2 id="extending-the-interceptor">Extending the Interceptor</h2>
-<p>
- <ul>
- <li>None</li>
- </ul>
-
-</p>
+<p>There are no obvious extensions to the existing interceptor.</p>
<h2 id="examples">Examples</h2>
-<div class="highlighter-rouge"><pre class="highlight"><code>
- <span class="nt"><action</span> <span class="na">name=</span><span
class="s">"someAction"</span> <span class="na">class=</span><span
class="s">"com.examples.SomeAction"</span><span class="nt">></span>
+<div class="highlighter-rouge"><pre class="highlight"><code> <span
class="nt"><action</span> <span class="na">name=</span><span
class="s">"someAction"</span> <span class="na">class=</span><span
class="s">"com.examples.SomeAction"</span><span class="nt">></span>
<span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"createSession"</span><span
class="nt">/></span>
<span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"defaultStack"</span><span
class="nt">/></span>
<span class="nt"><result</span> <span class="na">name=</span><span
class="s">"input"</span><span
class="nt">></span>input_with_token_tag.ftl<span
class="nt"></result></span>
<span class="nt"></action></span>
-
-
</code></pre>
</div>
-
</section>
</article>
diff --git a/content/core-developers/default-properties.html
b/content/core-developers/default-properties.html
index bbd3685..6eb1af8 100644
--- a/content/core-developers/default-properties.html
+++ b/content/core-developers/default-properties.html
@@ -142,8 +142,6 @@ on the classpath, but it is typically found under <code
class="highlighter-rouge
<p><strong>default.properties</strong></p>
<figure class="highlight"><pre><code class="language-txt" data-lang="txt">#
-# $Id$
-#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
diff --git a/content/core-developers/interceptors.html
b/content/core-developers/interceptors.html
index 25df78f..d84694f 100644
--- a/content/core-developers/interceptors.html
+++ b/content/core-developers/interceptors.html
@@ -228,8 +228,6 @@ than reiterate the same list of Interceptors, we can bundle
these Interceptors t
<figure class="highlight"><pre><code class="language-xml"
data-lang="xml"><span class="cp"><?xml version="1.0" encoding="UTF-8"
?></span>
<span class="c"><!--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -450,7 +448,8 @@ than reiterate the same list of Interceptors, we can bundle
these Interceptors t
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"modelDriven"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor"</span><span
class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"scopedModelDriven"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor"</span><span
class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"params"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.ParametersInterceptor"</span><span
class="nt">/></span>
- <span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"actionMappingParams"</span> <span
class="na">class=</span><span
class="s">"org.apache.struts2.interceptor.ActionMappingParametersInteceptor"</span><span
class="nt">/></span>
+ <span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"paramRemover"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.ParameterRemoverInterceptor"</span><span
class="nt">/></span>
+ <span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"actionMappingParams"</span> <span
class="na">class=</span><span
class="s">"org.apache.struts2.interceptor.ActionMappingParametersInterceptor"</span><span
class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"prepare"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.PrepareInterceptor"</span><span
class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"staticParams"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.StaticParametersInterceptor"</span><span
class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"scope"</span> <span
class="na">class=</span><span
class="s">"org.apache.struts2.interceptor.ScopeInterceptor"</span><span
class="nt">/></span>
@@ -466,6 +465,7 @@ than reiterate the same list of Interceptors, we can bundle
these Interceptors t
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"profiling"</span> <span
class="na">class=</span><span
class="s">"org.apache.struts2.interceptor.ProfilingActivationInterceptor"</span>
<span class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"roles"</span> <span
class="na">class=</span><span
class="s">"org.apache.struts2.interceptor.RolesInterceptor"</span> <span
class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"annotationWorkflow"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.annotations.AnnotationWorkflowInterceptor"</span>
<span class="nt">/></span>
+ <span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"annotationParameterFilter"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.annotations.AnnotationParameterFilterInterceptor"</span>
<span class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"multiselect"</span> <span
class="na">class=</span><span
class="s">"org.apache.struts2.interceptor.MultiselectInterceptor"</span> <span
class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"noop"</span> <span
class="na">class=</span><span
class="s">"org.apache.struts2.interceptor.NoOpInterceptor"</span> <span
class="nt">/></span>
@@ -648,6 +648,16 @@ specified in the <code
class="highlighter-rouge"><interceptors/></code> ta
<td>Converts similar parameters that may be named differently between
requests.</td>
</tr>
<tr>
+ <td><a href="annotation-parameter-filter-interceptor.html">Annotation
Parameter Filter Interceptor</a></td>
+ <td>annotationParameterFilter</td>
+ <td>Annotation based version of <a
href="parameter-filter-interceptor.html">Parameter Filter Interceptor</a>.</td>
+ </tr>
+ <tr>
+ <td><a href="annotation-workflow-interceptor.html">Annotation Workflow
Interceptor</a></td>
+ <td>annotationWorkflow</td>
+ <td>Invokes any annotated methods on the action.</td>
+ </tr>
+ <tr>
<td><a href="chaining-interceptor.html">Chaining Interceptor</a></td>
<td>chain</td>
<td>Makes the previous Action’s properties available to the current
Action. Commonly used together with <result type="chain"> (in the previous
Action).</result></td>
@@ -658,6 +668,11 @@ specified in the <code
class="highlighter-rouge"><interceptors/></code> ta
<td>Adds automatic checkbox handling code that detect an unchecked
checkbox and add it as a parameter with a default (usually ‘false’) value. Uses
a specially named hidden field to detect unsubmitted checkboxes. The default
unchecked value is overridable for non-boolean value’d checkboxes.</td>
</tr>
<tr>
+ <td><a href="conversion-error-interceptor.html">Conversion Error
Interceptor</a></td>
+ <td>conversionError</td>
+ <td>Adds conversion errors from the ActionContext to the Action’s field
errors</td>
+ </tr>
+ <tr>
<td><a href="cookie-interceptor.html">Cookie Interceptor</a></td>
<td>cookie</td>
<td>Inject cookie with a certain configurable name / value into action.
(Since 2.0.7.)</td>
@@ -668,24 +683,24 @@ specified in the <code
class="highlighter-rouge"><interceptors/></code> ta
<td>Transfer cookies from action to response (Since 2.3.15.)</td>
</tr>
<tr>
- <td><a href="conversion-error-interceptor.html">Conversion Error
Interceptor</a></td>
- <td>conversionError</td>
- <td>Adds conversion errors from the ActionContext to the Action’s field
errors</td>
- </tr>
- <tr>
<td><a href="create-session-interceptor.html">Create Session
Interceptor</a></td>
<td>createSession</td>
<td>Create an HttpSession automatically, useful with certain
Interceptors that require a HttpSession to work properly (like the
TokenInterceptor)</td>
</tr>
<tr>
+ <td><a href="clear-session-interceptor.html">Clear Session
Interceptor</a></td>
+ <td>clearSession</td>
+ <td>This interceptor clears the HttpSession.</td>
+ </tr>
+ <tr>
<td><a href="debugging-interceptor.html">DebuggingInterceptor</a></td>
<td>debugging</td>
<td>Provides several different debugging screens to provide insight into
the data behind the page.</td>
</tr>
<tr>
- <td><a href="execute-and-wait-interceptor.html">Execute and Wait
Interceptor</a></td>
- <td>execAndWait</td>
- <td>Executes the Action in the background and then sends the user off to
an intermediate waiting page.</td>
+ <td><a href="default-workflow-interceptor.html">Default Workflow
Interceptor</a></td>
+ <td>workflow</td>
+ <td>Calls the validate method in your Action class. If Action errors are
created then it returns the INPUT view.</td>
</tr>
<tr>
<td><a href="exception-interceptor.html">Exception Interceptor</a></td>
@@ -693,6 +708,11 @@ specified in the <code
class="highlighter-rouge"><interceptors/></code> ta
<td>Maps exceptions to a result.</td>
</tr>
<tr>
+ <td><a href="execute-and-wait-interceptor.html">Execute and Wait
Interceptor</a></td>
+ <td>execAndWait</td>
+ <td>Executes the Action in the background and then sends the user off to
an intermediate waiting page.</td>
+ </tr>
+ <tr>
<td><a href="file-upload-interceptor.html">File Upload
Interceptor</a></td>
<td>fileUpload</td>
<td>An Interceptor that adds easy access to file upload support.</td>
@@ -703,7 +723,7 @@ specified in the <code
class="highlighter-rouge"><interceptors/></code> ta
<td>Remembers the locale selected for a user’s session.</td>
</tr>
<tr>
- <td><a href="logger-interceptor.html">Logger Interceptor</a></td>
+ <td><a href="logger-interceptor.html">Logging Interceptor</a></td>
<td>logger</td>
<td>Outputs the name of the Action.</td>
</tr>
@@ -718,9 +738,19 @@ specified in the <code
class="highlighter-rouge"><interceptors/></code> ta
<td>If the Action implements ModelDriven, pushes the getModel Result
onto the Value Stack.</td>
</tr>
<tr>
- <td><a href="scoped-model-driven-interceptor.html">Scoped Model Driven
Interceptor</a></td>
- <td>scopedModelDriven</td>
- <td>If the Action implements ScopedModelDriven, the interceptor
retrieves and stores the model from a scope and sets it on the action calling
setModel.</td>
+ <td><a href="multiselect-interceptor.html">Multiselect
Interceptor</a></td>
+ <td>multiselect</td>
+ <td>Like the checkbox interceptor detects that no value was selected for
a field with multiple values (like a select) and adds an empty parameter</td>
+ </tr>
+ <tr>
+ <td><a href="no-op-interceptor.html">NoOp Interceptor</a></td>
+ <td>noop</td>
+ <td>Does nothing, just passes invocation further, used in empty
stack</td>
+ </tr>
+ <tr>
+ <td><a href="parameter-filter-interceptor.html">Parameter Filter
Interceptor</a></td>
+ <td>N/A</td>
+ <td>Removes parameters from the list of those available to Actions</td>
</tr>
<tr>
<td><a href="parameters-interceptor.html">Parameters Interceptor</a></td>
@@ -728,16 +758,31 @@ specified in the <code
class="highlighter-rouge"><interceptors/></code> ta
<td>Sets the request parameters onto the Action.</td>
</tr>
<tr>
+ <td><a href="parameter-remover-interceptor.html">Parameter Remover
Interceptor</a></td>
+ <td>paramRemover</td>
+ <td>Removes a parameter from parameters map.</td>
+ </tr>
+ <tr>
<td><a href="prepare-interceptor.html">Prepare Interceptor</a></td>
<td>prepare</td>
<td>If the Action implements Preparable, calls its prepare method.</td>
</tr>
<tr>
+ <td><a href="roles-interceptor.html">Roles Interceptor</a></td>
+ <td>roles</td>
+ <td>Action will only be executed if the user has the correct JAAS
role.</td>
+ </tr>
+ <tr>
<td><a href="scope-interceptor.html">Scope Interceptor</a></td>
<td>scope</td>
<td>Simple mechanism for storing Action state in the session or
application scope.</td>
</tr>
<tr>
+ <td><a href="scoped-model-driven-interceptor.html">Scoped Model Driven
Interceptor</a></td>
+ <td>scopedModelDriven</td>
+ <td>If the Action implements ScopedModelDriven, the interceptor
retrieves and stores the model from a scope and sets it on the action calling
setModel.</td>
+ </tr>
+ <tr>
<td><a href="servlet-config-interceptor.html">Servlet Config
Interceptor</a></td>
<td>servletConfig</td>
<td>Provide access to Maps representing HttpServletRequest and
HttpServletResponse.</td>
@@ -748,11 +793,6 @@ specified in the <code
class="highlighter-rouge"><interceptors/></code> ta
<td>Sets the struts.xml defined parameters onto the action. These are
the <param /> tags that are direct children of the <action> tag.</action></td>
</tr>
<tr>
- <td><a href="roles-interceptor.html">Roles Interceptor</a></td>
- <td>roles</td>
- <td>Action will only be executed if the user has the correct JAAS
role.</td>
- </tr>
- <tr>
<td><a href="timer-interceptor.html">Timer Interceptor</a></td>
<td>timer</td>
<td>Outputs how long the Action takes to execute (including nested
Interceptors and View)</td>
@@ -772,26 +812,6 @@ specified in the <code
class="highlighter-rouge"><interceptors/></code> ta
<td>validation</td>
<td>Performs validation using the validators defined in <em>action</em>
-validation.xml</td>
</tr>
- <tr>
- <td><a href="default-workflow-interceptor.html">Default Workflow
Interceptor</a></td>
- <td>workflow</td>
- <td>Calls the validate method in your Action class. If Action errors are
created then it returns the INPUT view.</td>
- </tr>
- <tr>
- <td><a href="parameter-filter-interceptor.html">Parameter Filter
Interceptor</a></td>
- <td>N/A</td>
- <td>Removes parameters from the list of those available to Actions</td>
- </tr>
- <tr>
- <td><a href="multiselect-interceptor.html">Multiselect
Interceptor</a></td>
- <td>multiselect</td>
- <td>Like the checkbox interceptor detects that no value was selected for
a field with multiple values (like a select) and adds an empty parameter</td>
- </tr>
- <tr>
- <td><a href="no-op-interceptor.html">NoOp Interceptor</a></td>
- <td>noop</td>
- <td>Does nothing, just passes invocation further, used in empty
stack</td>
- </tr>
</tbody>
</table>
diff --git a/content/core-developers/logger-interceptor.html
b/content/core-developers/logger-interceptor.html
index 9b4694e..8d433d3 100644
--- a/content/core-developers/logger-interceptor.html
+++ b/content/core-developers/logger-interceptor.html
@@ -125,26 +125,25 @@
<article class="container">
<section class="col-md-12">
- <a href="index.html" title="back to Core Developers Guide"><< back to Core
Developers Guide</a>
<a class="edit-on-gh"
href="https://github.com/apache/struts-site/edit/master/source/core-developers/logger-interceptor.md"
title="Edit this page on GitHub">Edit on GitHub</a>
- <h1 id="logger-interceptor">Logger Interceptor</h1>
+
+ <a href="interceptors.html" title="back to Interceptors"><< back to
Interceptors</a>
+
+ <h1 id="logging-interceptor">Logging Interceptor</h1>
-<p> <p>
- This interceptor logs the start and end of the execution an action (in
English-only, not internationalized).
- <br />
- <b>Note:</b>: This interceptor will log at <tt>INFO</tt> level.
- </p>
-</p>
+<p>This interceptor logs the start and end of the execution an action (in
English-only, not internationalized).</p>
+
+<blockquote>
+ <p>Note: This interceptor will log at <em>INFO</em> level.</p>
+</blockquote>
<h2 id="parameters">Parameters</h2>
-<p> There are no parameters for this interceptor.
-</p>
+<p>There are no parameters for this interceptor.</p>
<h2 id="extending-the-interceptor">Extending the Interceptor</h2>
-<p> There are no obvious extensions to the existing interceptor.
-</p>
+<p>There are no obvious extensions to the existing interceptor.</p>
<h2 id="examples">Examples</h2>
@@ -165,7 +164,6 @@
</code></pre>
</div>
-
</section>
</article>
diff --git a/content/core-developers/create-session-interceptor.html
b/content/core-developers/parameter-remover-interceptor.html
similarity index 74%
copy from content/core-developers/create-session-interceptor.html
copy to content/core-developers/parameter-remover-interceptor.html
index 9810e99..887aad3 100644
--- a/content/core-developers/create-session-interceptor.html
+++ b/content/core-developers/parameter-remover-interceptor.html
@@ -7,7 +7,7 @@
<meta http-equiv="Content-Language" content="en"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
- <title>Create Session Interceptor</title>
+ <title>Parameters Interceptor</title>
<link
href="//fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,400italic,600italic,700italic"
rel="stylesheet" type="text/css">
<link
href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css"
rel="stylesheet">
@@ -125,54 +125,47 @@
<article class="container">
<section class="col-md-12">
- <a href="index.html" title="back to Core Developers Guide"><< back to Core
Developers Guide</a>
- <a class="edit-on-gh"
href="https://github.com/apache/struts-site/edit/master/source/core-developers/create-session-interceptor.md"
title="Edit this page on GitHub">Edit on GitHub</a>
- <h1 id="create-session-interceptor">Create Session Interceptor</h1>
-
-<p>
- <p>
- This interceptor creates the HttpSession if it doesn't exist, also SessionMap
is recreated and put in ServletActionContext.
- </p>
-
- <p>
- This is particular useful when using the <@s.token> tag in freemarker
templates.
- The tag <b>do</b> require that a HttpSession is already created since
freemarker commits
- the response to the client immediately.
- </p>
-</p>
+ <a class="edit-on-gh"
href="https://github.com/apache/struts-site/edit/master/source/core-developers/parameter-remover-interceptor.md"
title="Edit this page on GitHub">Edit on GitHub</a>
+
+ <a href="interceptors.html" title="back to Interceptors"><< back to
Interceptors</a>
+
+ <h1 id="parameter-remover-interceptor">Parameter Remover Interceptor</h1>
-<h2 id="parameters">Parameters</h2>
+<p>This is interceptor allows parameters (matching one of the <code
class="highlighter-rouge">paramNames</code> value) to be removed from the
parameter map
+if they match a certain value (matching one of the <code
class="highlighter-rouge">paramValues</code> value), before they are set on the
action. A typical
+usage would be to want a dropdown/select to map onto a boolean value on an
action. The select had the options none,
+yes and no with values -1, true and false. The true and false would map across
correctly. However the -1 would be set to false.</p>
+
+<p>This was not desired as one might needed the value on the action to stay
null. This interceptor fixes this by preventing
+the parameter from ever reaching the action.</p>
-<p>
- <ul>
- <li>None</li>
- </ul>
+<h2 id="parameters">Parameters</h2>
-</p>
+<ul>
+ <li><code class="highlighter-rouge">paramNames</code> - a comma separated
value indicating the parameter name whose param value should be considered that
if
+they match any of the comma separated value from <code
class="highlighter-rouge">paramValues</code> attribute, shall be removed from
the parameter map such
+that they will not be applied to the action</li>
+ <li><code class="highlighter-rouge">paramValues</code> - a comma separated
value indicating the parameter value that if matched shall have its parameter
be
+removed from the parameter map such that they will not be applied to the
action</li>
+</ul>
<h2 id="extending-the-interceptor">Extending the Interceptor</h2>
-<p>
- <ul>
- <li>None</li>
- </ul>
-
-</p>
+<p>There are no obvious extensions to the existing interceptor.</p>
<h2 id="examples">Examples</h2>
-<div class="highlighter-rouge"><pre class="highlight"><code>
- <span class="nt"><action</span> <span class="na">name=</span><span
class="s">"someAction"</span> <span class="na">class=</span><span
class="s">"com.examples.SomeAction"</span><span class="nt">></span>
- <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"createSession"</span><span
class="nt">/></span>
- <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"defaultStack"</span><span
class="nt">/></span>
- <span class="nt"><result</span> <span class="na">name=</span><span
class="s">"input"</span><span
class="nt">></span>input_with_token_tag.ftl<span
class="nt"></result></span>
- <span class="nt"></action></span>
-
-
+<div class="highlighter-rouge"><pre class="highlight"><code><span
class="nt"><action</span> <span class="na">name=</span><span
class="s">"sample"</span> <span class="na">class=</span><span
class="s">"org.martingilday.Sample"</span><span class="nt">></span>
+ <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"paramRemover"</span><span
class="nt">></span>
+ <span class="nt"><param</span> <span class="na">name=</span><span
class="s">"paramNames"</span><span
class="nt">></span>aParam,anotherParam<span class="nt"></param></span>
+ <span class="nt"><param</span> <span class="na">name=</span><span
class="s">"paramValues"</span><span class="nt">></span>--,-1<span
class="nt"></param></span>
+ <span class="nt"></interceptor-ref></span>
+ <span class="nt"><interceptor-ref</span> <span
class="na">name=</span><span class="s">"defaultStack"</span> <span
class="nt">/></span>
+ ...
+<span class="nt"></action></span>
</code></pre>
</div>
-
</section>
</article>
diff --git a/content/core-developers/parameters-interceptor.html
b/content/core-developers/parameters-interceptor.html
index 3470d1f..af1a30e 100644
--- a/content/core-developers/parameters-interceptor.html
+++ b/content/core-developers/parameters-interceptor.html
@@ -125,8 +125,10 @@
<article class="container">
<section class="col-md-12">
- <a href="index.html" title="back to Core Developers Guide"><< back to Core
Developers Guide</a>
<a class="edit-on-gh"
href="https://github.com/apache/struts-site/edit/master/source/core-developers/parameters-interceptor.md"
title="Edit this page on GitHub">Edit on GitHub</a>
+
+ <a href="interceptors.html" title="back to Interceptors"><< back to
Interceptors</a>
+
<h1 class="no_toc" id="parameters-interceptor">Parameters Interceptor</h1>
<ul id="markdown-toc">
diff --git a/content/core-developers/struts-default-xml.html
b/content/core-developers/struts-default-xml.html
index db72695..9c60b96 100644
--- a/content/core-developers/struts-default-xml.html
+++ b/content/core-developers/struts-default-xml.html
@@ -143,8 +143,6 @@ setting in <a
href="struts-properties.html">struts.properties</a>.</p>
<figure class="highlight"><pre><code class="language-xml"
data-lang="xml"><span class="cp"><?xml version="1.0" encoding="UTF-8"
?></span>
<span class="c"><!--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -365,7 +363,8 @@ setting in <a
href="struts-properties.html">struts.properties</a>.</p>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"modelDriven"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor"</span><span
class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"scopedModelDriven"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor"</span><span
class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"params"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.ParametersInterceptor"</span><span
class="nt">/></span>
- <span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"actionMappingParams"</span> <span
class="na">class=</span><span
class="s">"org.apache.struts2.interceptor.ActionMappingParametersInteceptor"</span><span
class="nt">/></span>
+ <span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"paramRemover"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.ParameterRemoverInterceptor"</span><span
class="nt">/></span>
+ <span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"actionMappingParams"</span> <span
class="na">class=</span><span
class="s">"org.apache.struts2.interceptor.ActionMappingParametersInterceptor"</span><span
class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"prepare"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.PrepareInterceptor"</span><span
class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"staticParams"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.StaticParametersInterceptor"</span><span
class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"scope"</span> <span
class="na">class=</span><span
class="s">"org.apache.struts2.interceptor.ScopeInterceptor"</span><span
class="nt">/></span>
@@ -381,6 +380,7 @@ setting in <a
href="struts-properties.html">struts.properties</a>.</p>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"profiling"</span> <span
class="na">class=</span><span
class="s">"org.apache.struts2.interceptor.ProfilingActivationInterceptor"</span>
<span class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"roles"</span> <span
class="na">class=</span><span
class="s">"org.apache.struts2.interceptor.RolesInterceptor"</span> <span
class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"annotationWorkflow"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.annotations.AnnotationWorkflowInterceptor"</span>
<span class="nt">/></span>
+ <span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"annotationParameterFilter"</span> <span
class="na">class=</span><span
class="s">"com.opensymphony.xwork2.interceptor.annotations.AnnotationParameterFilterInterceptor"</span>
<span class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"multiselect"</span> <span
class="na">class=</span><span
class="s">"org.apache.struts2.interceptor.MultiselectInterceptor"</span> <span
class="nt">/></span>
<span class="nt"><interceptor</span> <span
class="na">name=</span><span class="s">"noop"</span> <span
class="na">class=</span><span
class="s">"org.apache.struts2.interceptor.NoOpInterceptor"</span> <span
class="nt">/></span>
diff --git a/content/core-developers/validation.html
b/content/core-developers/validation.html
index 223b51d..0bbbc5d 100644
--- a/content/core-developers/validation.html
+++ b/content/core-developers/validation.html
@@ -200,6 +200,26 @@ to have many field-validators which is almost always the
case.</p>
our own validators.</p>
<figure class="highlight"><pre><code class="language-xml"
data-lang="xml"><span class="cp"><?xml version="1.0"
encoding="UTF-8"?></span>
+<span class="c"><!--
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ */
+--></span>
<span class="cp"><!DOCTYPE validators PUBLIC
"-//Apache Struts//XWork Validator Definition 1.0//EN"
"http://struts.apache.org/dtds/xwork-validator-definition-1.0.dtd"></span>
diff --git a/content/tag-developers/css-xhtml-theme.html
b/content/tag-developers/css-xhtml-theme.html
index dd15877..ed7e00e 100644
--- a/content/tag-developers/css-xhtml-theme.html
+++ b/content/tag-developers/css-xhtml-theme.html
@@ -148,8 +148,6 @@ the HTML tags are wrapped by a standard header and footer.
For example, in the <
<figure class="highlight"><pre><code class="language-freemarker"
data-lang="freemarker"><#--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -208,8 +206,6 @@ the CSS theme does not use a <code
class="highlighter-rouge">labelposition</code
<figure class="highlight"><pre><code class="language-freemarker"
data-lang="freemarker"><#--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -251,8 +247,6 @@ block before the element is displayed.</p>
<figure class="highlight"><pre><code class="language-freemarker"
data-lang="freemarker"><#--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -312,8 +306,6 @@ to provide the layout. The contents of
<strong>head.ftl</strong> are:</p>
<figure class="highlight"><pre><code class="language-freemarker"
data-lang="freemarker"><#--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
diff --git a/content/tag-developers/simple-theme.html
b/content/tag-developers/simple-theme.html
index e4145e4..93a508a 100644
--- a/content/tag-developers/simple-theme.html
+++ b/content/tag-developers/simple-theme.html
@@ -161,8 +161,6 @@ Ajax/Dojo support so that tags can import Dojo widgets
easily.</p>
<figure class="highlight"><pre><code class="language-freemarker"
data-lang="freemarker"><#--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
diff --git a/content/tag-developers/xhtml-theme.html
b/content/tag-developers/xhtml-theme.html
index 139fe19..56b2e0d 100644
--- a/content/tag-developers/xhtml-theme.html
+++ b/content/tag-developers/xhtml-theme.html
@@ -163,8 +163,6 @@ and <code
class="highlighter-rouge">controlfooter.ftl</code> templates are wrapp
<figure class="highlight"><pre><code class="language-freemarker"
data-lang="freemarker"><#--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -199,8 +197,6 @@ the <a href="ajax-theme.html">ajax theme</a>) contents:</p>
<figure class="highlight"><pre><code class="language-freemarker"
data-lang="freemarker"><#--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -230,8 +226,6 @@ the <a href="ajax-theme.html">ajax theme</a>) contents:</p>
<figure class="highlight"><pre><code class="language-freemarker"
data-lang="freemarker"><#--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -328,8 +322,6 @@ for an <code class="highlighter-rouge">after</code>
parameter.</p>
<figure class="highlight"><pre><code class="language-freemarker"
data-lang="freemarker"><#--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -380,8 +372,6 @@ render the form elements.</p>
<figure class="highlight"><pre><code class="language-freemarker"
data-lang="freemarker"><#--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -458,8 +448,6 @@ wrapping table, the opening and closing templates also, if
the <code class="high
<figure class="highlight"><pre><code class="language-freemarker"
data-lang="freemarker"><#--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -494,8 +482,6 @@ wrapping table, the opening and closing templates also, if
the <code class="high
<figure class="highlight"><pre><code class="language-freemarker"
data-lang="freemarker"><#--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -538,8 +524,6 @@ to <code class="highlighter-rouge">true</code>, enable <a
href="../core-develope
<figure class="highlight"><pre><code class="language-freemarker"
data-lang="freemarker"><#--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -574,8 +558,6 @@ to <code class="highlighter-rouge">true</code>, enable <a
href="../core-develope
<figure class="highlight"><pre><code class="language-freemarker"
data-lang="freemarker"><#--
/*
- * $Id$
- *
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
--
To stop receiving notification emails like this one, please contact
['"[email protected]" <[email protected]>'].