You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by bu...@apache.org on 2016/07/02 18:36:13 UTC

svn commit: r991908 - in /websites/staging/sling/trunk/content: ./ documentation/bundles/scripting/

Author: buildbot
Date: Sat Jul  2 18:36:12 2016
New Revision: 991908

Log:
Staging update by buildbot for sling

Added:
    websites/staging/sling/trunk/content/documentation/bundles/scripting/Scripting-Thymeleaf-Class-Diagram.png   (with props)
    websites/staging/sling/trunk/content/documentation/bundles/scripting/Scripting-Thymeleaf-Pattern-TemplateModeProvider.png   (with props)
    websites/staging/sling/trunk/content/documentation/bundles/scripting/Scripting-Thymeleaf-ResourceBundle-MessageResolver.png   (with props)
    websites/staging/sling/trunk/content/documentation/bundles/scripting/Scripting-Thymeleaf-ScriptEngineFactory.png   (with props)
    websites/staging/sling/trunk/content/documentation/bundles/scripting/Scripting-Thymeleaf-Sling-Resource-TemplateResolver.png   (with props)
Removed:
    websites/staging/sling/trunk/content/documentation/bundles/scripting/class-diagram.svg
    websites/staging/sling/trunk/content/documentation/bundles/scripting/scripting-thymeleaf-html5-template-mode-handler.png
    websites/staging/sling/trunk/content/documentation/bundles/scripting/scripting-thymeleaf-non-caching-template-resolver.png
    websites/staging/sling/trunk/content/documentation/bundles/scripting/scripting-thymeleaf-script-engine-factory.png
Modified:
    websites/staging/sling/trunk/content/   (props changed)
    websites/staging/sling/trunk/content/documentation/bundles/scripting/scripting-thymeleaf.html
    websites/staging/sling/trunk/content/sitemap.html

Propchange: websites/staging/sling/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Sat Jul  2 18:36:12 2016
@@ -1 +1 @@
-1750621
+1751087

Added: websites/staging/sling/trunk/content/documentation/bundles/scripting/Scripting-Thymeleaf-Class-Diagram.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/sling/trunk/content/documentation/bundles/scripting/Scripting-Thymeleaf-Class-Diagram.png
------------------------------------------------------------------------------
    svn:mime-type = image/png

Added: websites/staging/sling/trunk/content/documentation/bundles/scripting/Scripting-Thymeleaf-Pattern-TemplateModeProvider.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/sling/trunk/content/documentation/bundles/scripting/Scripting-Thymeleaf-Pattern-TemplateModeProvider.png
------------------------------------------------------------------------------
    svn:mime-type = image/png

Added: websites/staging/sling/trunk/content/documentation/bundles/scripting/Scripting-Thymeleaf-ResourceBundle-MessageResolver.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/sling/trunk/content/documentation/bundles/scripting/Scripting-Thymeleaf-ResourceBundle-MessageResolver.png
------------------------------------------------------------------------------
    svn:mime-type = image/png

Added: websites/staging/sling/trunk/content/documentation/bundles/scripting/Scripting-Thymeleaf-ScriptEngineFactory.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/sling/trunk/content/documentation/bundles/scripting/Scripting-Thymeleaf-ScriptEngineFactory.png
------------------------------------------------------------------------------
    svn:mime-type = image/png

Added: websites/staging/sling/trunk/content/documentation/bundles/scripting/Scripting-Thymeleaf-Sling-Resource-TemplateResolver.png
==============================================================================
Binary file - no diff available.

Propchange: websites/staging/sling/trunk/content/documentation/bundles/scripting/Scripting-Thymeleaf-Sling-Resource-TemplateResolver.png
------------------------------------------------------------------------------
    svn:mime-type = image/png

Modified: websites/staging/sling/trunk/content/documentation/bundles/scripting/scripting-thymeleaf.html
==============================================================================
--- websites/staging/sling/trunk/content/documentation/bundles/scripting/scripting-thymeleaf.html (original)
+++ websites/staging/sling/trunk/content/documentation/bundles/scripting/scripting-thymeleaf.html Sat Jul  2 18:36:12 2016
@@ -114,13 +114,18 @@ h2:hover > .headerlink, h3:hover > .head
   visibility: hidden;
 }
 h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
-<p>Sling Scripting Thymeleaf is the scripting engine for <a href="http://www.thymeleaf.org"><em>Thymeleaf</em></a> templates.</p>
+<p>Sling Scripting Thymeleaf is the scripting engine for <a href="http://www.thymeleaf.org"><em>Thymeleaf</em></a> (3.0) templates.</p>
 <div class="toc">
 <ul>
 <li><a href="#features">Features</a></li>
-<li><a href="#class-diagram">Class Diagram</a></li>
 <li><a href="#installation">Installation</a></li>
-<li><a href="#configuration">Configuration</a></li>
+<li><a href="#configuration">Configuration</a><ul>
+<li><a href="#apache-sling-scripting-thymeleaf-scriptenginefactory">Apache Sling Scripting Thymeleaf “ScriptEngineFactory”</a></li>
+<li><a href="#apache-sling-scripting-thymeleaf-sling-resource-templateresolver">Apache Sling Scripting Thymeleaf “Sling Resource TemplateResolver”</a></li>
+<li><a href="#apache-sling-scripting-thymeleaf-pattern-templatemodeprovider">Apache Sling Scripting Thymeleaf “Pattern TemplateModeProvider”</a></li>
+<li><a href="#apache-sling-scripting-thymeleaf-resourcebundle-messageresolver">Apache Sling Scripting Thymeleaf “ResourceBundle MessageResolver”</a></li>
+</ul>
+</li>
 <li><a href="#sling-dialect">Sling Dialect</a><ul>
 <li><a href="#include">include</a><ul>
 <li><a href="#supported-options-requestdispatcher-option">supported options (* = RequestDispatcher option)</a></li>
@@ -128,26 +133,22 @@ h2:hover > .headerlink, h3:hover > .head
 </li>
 </ul>
 </li>
+<li><a href="#class-diagram">Class Diagram</a></li>
 <li><a href="#sample">Sample</a></li>
 </ul>
 </div>
 <h1 id="features">Features<a class="headerlink" href="#features" title="Permanent link">&para;</a></h1>
 <ul>
-<li>out of the box support for <em>legacy</em> HTML5 through embedded <em>NekoHTML</em></li>
-<li>runtime configurable <code>TemplateModeHandler</code>s for <em>XML</em>, <em>VALIDXML</em>, <em>XHTML</em>, <em>VALIDXHTML</em>, <em>HTML5</em> and <em>LEGACYHTML5</em></li>
-<li><code>ResourceResolver</code> backed by Sling's <code>ResourceResolver</code></li>
-<li><code>MessageResolver</code> backed by <code>ResourceBundleProvider</code> from <code>org.apache.sling.i18n</code></li>
+<li>Supporting all of Thymeleaf's extension points: <a href="http://www.thymeleaf.org/apidocs/thymeleaf/3.0.0.RELEASE/org/thymeleaf/templateresolver/ITemplateResolver.html"><em>TemplateResolver</em></a>s, <a href="http://www.thymeleaf.org/apidocs/thymeleaf/3.0.0.RELEASE/org/thymeleaf/messageresolver/IMessageResolver.html"><em>MessageResolver</em></a>s, <a href="http://www.thymeleaf.org/apidocs/thymeleaf/3.0.0.RELEASE/org/thymeleaf/dialect/IDialect.html"><em>Dialect</em></a>s, <a href="http://www.thymeleaf.org/apidocs/thymeleaf/3.0.0.RELEASE/org/thymeleaf/linkbuilder/ILinkBuilder.html"><em>LinkBuilder</em></a>s, <a href="http://www.thymeleaf.org/apidocs/thymeleaf/3.0.0.RELEASE/org/thymeleaf/templateparser/markup/decoupled/IDecoupledTemplateLogicResolver.html"><em>DecoupledTemplateLogicResolver</em></a>, <a href="http://www.thymeleaf.org/apidocs/thymeleaf/3.0.0.RELEASE/org/thymeleaf/cache/ICacheManager.html"><em>CacheManager</em></a> and <a href="http://www.thy
 meleaf.org/apidocs/thymeleaf/3.0.0.RELEASE/org/thymeleaf/context/IEngineContext.html"><em>EngineContextFactory</em></a></li>
+<li><code>SlingResourceTemplateResolver</code> customizable through <code>TemplateModeProvider</code></li>
+<li><code>ResourceBundleMessageResolver</code> backed by <code>ResourceBundleProvider</code> from <a href="https://sling.apache.org/documentation/bundles/internationalization-support-i18n.html">Sling i18n</a> customizable through optional <code>AbsentMessageRepresentationProvider</code></li>
+<li><code>PatternTemplateModeProvider</code> supporting <a href="https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html"><code>Pattern</code></a> configurations for all <a href="http://www.thymeleaf.org/apidocs/thymeleaf/3.0.0.RELEASE/org/thymeleaf/templatemode/TemplateMode.html">template modes</a> (<code>HTML</code>, <code>XML</code>, <code>TEXT</code>, <code>JAVASCRIPT</code>, <code>CSS</code> and <code>RAW</code>)</li>
 <li><code>SlingDialect</code></li>
+<li>Thymeleaf's <a href="http://www.thymeleaf.org/apidocs/thymeleaf/3.0.0.RELEASE/org/thymeleaf/ITemplateEngine.html"><code>TemplateEngine</code></a> registered as OSGi Service (<a href="http://www.thymeleaf.org/apidocs/thymeleaf/3.0.0.RELEASE/org/thymeleaf/ITemplateEngine.html"><code>ITemplateEngine</code></a>) for direct use</li>
 </ul>
-<h1 id="class-diagram">Class Diagram<a class="headerlink" href="#class-diagram" title="Permanent link">&para;</a></h1>
-<p><a href="class-diagram.svg"><img alt="Class Diagram" src="class-diagram.svg" /></a></p>
 <h1 id="installation">Installation<a class="headerlink" href="#installation" title="Permanent link">&para;</a></h1>
-<p>For running Sling Scripting Thymeleaf with Sling's Launchpad some dependencies need to be resolved. This can be achieved by installing the following bundles:</p>
-<div class="codehilite"><pre><span class="n">mvn</span><span class="o">:</span><span class="n">org</span><span class="o">.</span><span class="na">apache</span><span class="o">.</span><span class="na">sling</span><span class="sr">/org.apache.sling.i18n/</span><span class="mf">2.2</span><span class="o">.</span><span class="mi">10</span>
-<span class="n">mvn</span><span class="o">:</span><span class="n">org</span><span class="o">.</span><span class="na">javassist</span><span class="sr">/javassist/</span><span class="mf">3.18</span><span class="o">.</span><span class="mi">2</span><span class="o">-</span><span class="n">GA</span>
-<span class="n">mvn</span><span class="o">:</span><span class="n">commons</span><span class="o">-</span><span class="n">io</span><span class="sr">/commons-io/</span><span class="mf">2.4</span>
-<span class="n">mvn</span><span class="o">:</span><span class="n">org</span><span class="o">.</span><span class="na">apache</span><span class="o">.</span><span class="na">servicemix</span><span class="o">.</span><span class="na">bundles</span><span class="sr">/org.apache.servicemix.bundles.xerces/</span><span class="mf">2.11</span><span class="o">.</span><span class="mi">0</span><span class="n">_1</span>
-<span class="n">mvn</span><span class="o">:</span><span class="n">org</span><span class="o">.</span><span class="na">apache</span><span class="o">.</span><span class="na">servicemix</span><span class="o">.</span><span class="na">bundles</span><span class="sr">/org.apache.servicemix.bundles.xmlresolver/</span><span class="mf">1.2</span><span class="n">_5</span>
+<p>For running Sling Scripting Thymeleaf with Sling's Launchpad some dependencies need to be resolved. This can be achieved by installing the following bundle:</p>
+<div class="codehilite"><pre><span class="n">mvn</span><span class="o">:</span><span class="n">org</span><span class="o">.</span><span class="na">javassist</span><span class="sr">/javassist/</span><span class="mf">3.20</span><span class="o">.</span><span class="mi">0</span><span class="o">-</span><span class="n">GA</span>
 </pre></div>
 
 
@@ -157,18 +158,25 @@ h2:hover > .headerlink, h3:hover > .head
 </pre></div>
 
 
+<p><strong>Note:</strong> Sling Scripting Thymeleaf requires an implementation of OSGi Declarative Services 1.3 (e.g. <a href="http://felix.apache.org/documentation/subprojects/apache-felix-service-component-runtime.html">Apache Felix Service Component Runtime</a> 2.0.0 or greater)</p>
 <h1 id="configuration">Configuration<a class="headerlink" href="#configuration" title="Permanent link">&para;</a></h1>
-<p>By default Sling Scripting Thymeleaf's <em>Script Engine Factory</em> is configured for templates with extension <code>html</code> and mime type <code>text/html</code>.</p>
-<p><img alt="Sling Scripting Thymeleaf Script Engine Factory" src="scripting-thymeleaf-script-engine-factory.png" /></p>
-<p>The <em>Non-Caching Template Resolver</em> (the only available template resolver for now) is configured to read templates with encoding <code>UTF-8</code>.</p>
-<p><img alt="Sling Scripting Thymeleaf Non-Caching Template Resolver" src="scripting-thymeleaf-non-caching-template-resolver.png" /></p>
-<p>At least one template mode handler (e.g. <em>HTML5 Template Mode Handler</em>) needs to be configured with a pattern to process templates by Sling Scripting Thymeleaf:</p>
-<p><img alt="Sling Scripting Thymeleaf HTML5 Template Mode Handler" src="scripting-thymeleaf-html5-template-mode-handler.png" /></p>
+<h2 id="apache-sling-scripting-thymeleaf-scriptenginefactory">Apache Sling Scripting Thymeleaf “ScriptEngineFactory”<a class="headerlink" href="#apache-sling-scripting-thymeleaf-scriptenginefactory" title="Permanent link">&para;</a></h2>
+<p>By default Sling Scripting Thymeleaf's <em>ScriptEngineFactory</em> is configured for templates with extension <code>html</code> and mime type <code>text/html</code> and uses all of Thymeleaf's standard extensions either <em>also</em> or <em>exclusively</em>.</p>
+<p><img alt="Apache Sling Scripting Thymeleaf “ScriptEngineFactory”" src="Scripting-Thymeleaf-ScriptEngineFactory.png" /></p>
+<h2 id="apache-sling-scripting-thymeleaf-sling-resource-templateresolver">Apache Sling Scripting Thymeleaf “Sling Resource TemplateResolver”<a class="headerlink" href="#apache-sling-scripting-thymeleaf-sling-resource-templateresolver" title="Permanent link">&para;</a></h2>
+<p>The <em>Sling Resource TemplateResolver</em> is configured to resolve templates with <em>use decoupled logic</em> enabled.</p>
+<p><img alt="Apache Sling Scripting Thymeleaf “Sling Resource TemplateResolver”" src="Scripting-Thymeleaf-Sling-Resource-TemplateResolver.png" /></p>
+<h2 id="apache-sling-scripting-thymeleaf-pattern-templatemodeprovider">Apache Sling Scripting Thymeleaf “Pattern TemplateModeProvider”<a class="headerlink" href="#apache-sling-scripting-thymeleaf-pattern-templatemodeprovider" title="Permanent link">&para;</a></h2>
+<p>The <em>Pattern TemplateModeProvider</em> is configured to match template paths against default extensions for providing template modes (of course except no-op mode <code>RAW</code>).</p>
+<p><img alt="Apache Sling Scripting Thymeleaf “Pattern TemplateModeProvider" src="Scripting-Thymeleaf-Pattern-TemplateModeProvider.png" /></p>
+<h2 id="apache-sling-scripting-thymeleaf-resourcebundle-messageresolver">Apache Sling Scripting Thymeleaf “ResourceBundle MessageResolver”<a class="headerlink" href="#apache-sling-scripting-thymeleaf-resourcebundle-messageresolver" title="Permanent link">&para;</a></h2>
+<p>The <em>ResourceBundle MessageResolver</em> is configured to use the message's key as absent message representation.</p>
+<p><img alt="Apache Sling Scripting Thymeleaf “ResourceBundle MessageResolver”" src="Scripting-Thymeleaf-ResourceBundle-MessageResolver.png" /></p>
 <h1 id="sling-dialect">Sling Dialect<a class="headerlink" href="#sling-dialect" title="Permanent link">&para;</a></h1>
 <p>Sling Scripting Thymeleaf comes with its own dialect using the <code>sling</code> prefix/namespace currently supporting the <em>include</em> feature known from <a href="/documentation/bundles/scripting/scripting-jsp.html">Sling Scripting JSP Taglib</a>.</p>
 <h2 id="include">include<a class="headerlink" href="#include" title="Permanent link">&para;</a></h2>
-<p><code>&lt;header data-sling-include="${resource}" resourceType="'example/page/header'" unwrap="true"/&gt;</code></p>
-<p><code>include</code> - The resource object (<a href="http://sling.apache.org/apidocs/sling7/org/apache/sling/api/resource/Resource.html"><code>Resource</code></a>) or the path (<code>String</code>) to the resource object to include in the current request processing. If this path is relative it is appended to the path of the current resource whose script is including the given resource.</p>
+<p><code>&lt;header data-sling-include="${resource}" data-sling-resourceType="'example/page/header'" data-sling-unwrap="true"/&gt;</code></p>
+<p><code>include</code> - The resource object (<a href="http://sling.apache.org/apidocs/sling7/org/apache/sling/api/resource/Resource.html"><code>Resource</code></a>) or the path (<code>String</code>) of the resource object to include in the current request processing. If this path is relative it is appended to the path of the current resource whose script is including the given resource.</p>
 <h3 id="supported-options-requestdispatcher-option">supported options (* = <a href="http://sling.apache.org/apidocs/sling7/org/apache/sling/api/request/RequestDispatcherOptions.html">RequestDispatcher option</a>)<a class="headerlink" href="#supported-options-requestdispatcher-option" title="Permanent link">&para;</a></h3>
 <ul>
 <li><code>addSelectors</code> (<code>String</code>) *: When dispatching, add the value provided by this option to the selectors.</li>
@@ -177,11 +185,13 @@ h2:hover > .headerlink, h3:hover > .head
 <li><code>resourceType</code> (<code>String</code>) *: The resource type of a resource to include. If the resource to be included is specified with the path attribute, which cannot be resolved to a resource, the tag may create a synthetic resource object out of the path and this resource type. If the resource type is set the path must be the exact path to a resource object. That is, adding parameters, selectors and extensions to the path is not supported if the resource type is set.</li>
 <li><code>unwrap</code> (<code>Boolean</code>): removes the host element</li>
 </ul>
+<h1 id="class-diagram">Class Diagram<a class="headerlink" href="#class-diagram" title="Permanent link">&para;</a></h1>
+<p><a href="Scripting-Thymeleaf-Class-Diagram.png"><img alt="Class Diagram" src="Scripting-Thymeleaf-Class-Diagram.png" /></a></p>
 <h1 id="sample">Sample<a class="headerlink" href="#sample" title="Permanent link">&para;</a></h1>
 <p>The <a href="http://svn.apache.org/repos/asf/sling/trunk/samples/fling/">Sling Fling Sample</a> is a sample using Sling Scripting Thymeleaf with <a href="/documentation/bundles/models.html">Sling Models</a> and <a href="/documentation/bundles/sling-query.html">Sling Query</a>.</p>
 <p><img alt="Sling Fling Sample" src="sling-fling-sample.png" /></p>
       <div class="timestamp" style="margin-top: 30px; font-size: 80%; text-align: right;">
-        Rev. 1739945 by radu on Tue, 19 Apr 2016 15:18:10 +0000
+        Rev. 1751087 by olli on Sat, 2 Jul 2016 18:35:37 +0000
       </div>
       <div class="trademarkFooter"> 
         Apache Sling, Sling, Apache, the Apache feather logo, and the Apache Sling project

Modified: websites/staging/sling/trunk/content/sitemap.html
==============================================================================
--- websites/staging/sling/trunk/content/sitemap.html (original)
+++ websites/staging/sling/trunk/content/sitemap.html Sat Jul  2 18:36:12 2016
@@ -144,6 +144,7 @@ h2:hover > .headerlink, h3:hover > .head
 <li><a href="/documentation/bundles/osgi-installer.html">OSGi Installer</a></li>
 <li><a href="/documentation/bundles/output-rewriting-pipelines-org-apache-sling-rewriter.html">Output Rewriting Pipelines (org.apache.sling.rewriter)</a></li>
 <li><a href="/documentation/bundles/rendering-content-default-get-servlets.html">Rendering Content - Default GET Servlets</a></li>
+<li><a href="/documentation/bundles/repository-initialization.html">Repository Initializers and Repository Initialization Language</a></li>
 <li><a href="/documentation/bundles/request-analysis.html">Request Processing Analyzer (reqanalyzer)</a></li>
 <li><a href="/documentation/bundles/resource-access-security.html">Resource Access Security</a></li>
 <li><a href="/documentation/bundles/resource-editor.html">The Apache Sling Resource Editor</a></li>
@@ -151,7 +152,7 @@ h2:hover > .headerlink, h3:hover > .head
 <li><a href="/documentation/bundles/scheduler-service-commons-scheduler.html">Scheduler Service (commons scheduler)</a></li>
 <li><a href="/documentation/bundles/scripting.html">Sling Scripting</a><ul>
 <li><a href="/documentation/bundles/scripting/scripting-jsp.html">JSP Scripting Engine</a></li>
-<li><a href="/documentation/bundles/scripting/scripting-sightly.html">scripting-sightly.mdtext</a></li>
+<li><a href="/documentation/bundles/scripting/scripting-sightly.html">Sightly Scripting Engine</a></li>
 <li><a href="/documentation/bundles/scripting/scripting-thymeleaf.html">Sling Scripting Thymeleaf</a></li>
 </ul>
 </li>