This is an automated email from the ASF dual-hosted git repository.
asf-ci-deploy pushed a commit to branch asf-site-production
in repository https://gitbox.apache.org/repos/asf/grails-website.git
The following commit(s) were added to refs/heads/asf-site-production by this
push:
new 743fe9f9bec Updating apache/grails-website asf-site-production branch
for Github Actions run:20962760064
743fe9f9bec is described below
commit 743fe9f9bec8ae5a6da286438f00cad2957c325c
Author: jamesfredley <[email protected]>
AuthorDate: Tue Jan 13 15:46:12 2026 +0000
Updating apache/grails-website asf-site-production branch for Github
Actions run:20962760064
---
blog/index.html | 16 ++++++++--------
blog/tag/quickcast.html | 16 ++++++++--------
download.html | 32 ++++++++++++++++----------------
foundation/minutes.xml | 2 +-
rss.xml | 32 ++++++++++++++++----------------
5 files changed, 49 insertions(+), 49 deletions(-)
diff --git a/blog/index.html b/blog/index.html
index de91c5e194b..5152120c4e4 100644
--- a/blog/index.html
+++ b/blog/index.html
@@ -692,15 +692,15 @@ Companies deploy assistants like this [](https://kapa.ai)
on docs via [website w
</a>
</article></div></div><div class="threecolumns">
<div class='column'><article class='blogcard' style='background-image:
url(https://grails.apache.org/images/quickcast.jpg)'>
- <a href='https://grails.apache.org/blog/2017-01-20-3.html'>
+ <a href='https://grails.apache.org/blog/2017-01-20-1.html'>
<h3>January 20, 2017</h3>
- <h2>Quickcast #5: Retrieving Runtime Config Value...</h2>
+ <h2>Quickcast #3: Multi-Project Builds</h2>
</a>
</article></div>
<div class='column'><article class='blogcard' style='background-image:
url(https://grails.apache.org/images/quickcast.jpg)'>
- <a href='https://grails.apache.org/blog/2017-01-20-1.html'>
+ <a href='https://grails.apache.org/blog/2017-01-20-3.html'>
<h3>January 20, 2017</h3>
- <h2>Quickcast #3: Multi-Project Builds</h2>
+ <h2>Quickcast #5: Retrieving Runtime Config Value...</h2>
</a>
</article></div>
<div class='column'><article class='blogcard' style='background-image:
url(https://grails.apache.org/images/quickcast.jpg)'>
@@ -836,15 +836,15 @@ Companies deploy assistants like this [](https://kapa.ai)
on docs via [website w
</a>
</article></div></div><div class="threecolumns">
<div class='column'><article class='blogcard' style='background-image:
url(https://grails.apache.org/images/quickcast.jpg)'>
- <a href='https://grails.apache.org/blog/2016-04-01-1.html'>
+ <a href='https://grails.apache.org/blog/2016-04-01-2.html'>
<h3>April 1, 2016</h3>
- <h2>Quickcast #1: Grails® Interceptors</h2>
+ <h2>Quickcast #2: JSON Views</h2>
</a>
</article></div>
<div class='column'><article class='blogcard' style='background-image:
url(https://grails.apache.org/images/quickcast.jpg)'>
- <a href='https://grails.apache.org/blog/2016-04-01-2.html'>
+ <a href='https://grails.apache.org/blog/2016-04-01-1.html'>
<h3>April 1, 2016</h3>
- <h2>Quickcast #2: JSON Views</h2>
+ <h2>Quickcast #1: Grails® Interceptors</h2>
</a>
</article></div>
<div class='column'><article class='blogcard' style='background-image:
url(https://grails.apache.org/images/2015-03-01.jpg)'>
diff --git a/blog/tag/quickcast.html b/blog/tag/quickcast.html
index 0cd45f44795..4f5e515c7fe 100644
--- a/blog/tag/quickcast.html
+++ b/blog/tag/quickcast.html
@@ -151,15 +151,15 @@ Companies deploy assistants like this [](https://kapa.ai)
on docs via [website w
</a>
</article></div></div><div class="threecolumns">
<div class='column'><article class='blogcard' style='background-image:
url(https://grails.apache.org/images/quickcast.jpg)'>
- <a href='https://grails.apache.org/blog/2017-01-20-3.html'>
+ <a href='https://grails.apache.org/blog/2017-01-20-1.html'>
<h3>January 20, 2017</h3>
- <h2>Quickcast #5: Retrieving Runtime Config Value...</h2>
+ <h2>Quickcast #3: Multi-Project Builds</h2>
</a>
</article></div>
<div class='column'><article class='blogcard' style='background-image:
url(https://grails.apache.org/images/quickcast.jpg)'>
- <a href='https://grails.apache.org/blog/2017-01-20-1.html'>
+ <a href='https://grails.apache.org/blog/2017-01-20-3.html'>
<h3>January 20, 2017</h3>
- <h2>Quickcast #3: Multi-Project Builds</h2>
+ <h2>Quickcast #5: Retrieving Runtime Config Value...</h2>
</a>
</article></div>
<div class='column'><article class='blogcard' style='background-image:
url(https://grails.apache.org/images/quickcast.jpg)'>
@@ -175,15 +175,15 @@ Companies deploy assistants like this [](https://kapa.ai)
on docs via [website w
</a>
</article></div>
<div class='column'><article class='blogcard' style='background-image:
url(https://grails.apache.org/images/quickcast.jpg)'>
- <a href='https://grails.apache.org/blog/2016-04-01-1.html'>
+ <a href='https://grails.apache.org/blog/2016-04-01-2.html'>
<h3>April 1, 2016</h3>
- <h2>Quickcast #1: Grails® Interceptors</h2>
+ <h2>Quickcast #2: JSON Views</h2>
</a>
</article></div>
<div class='column'><article class='blogcard' style='background-image:
url(https://grails.apache.org/images/quickcast.jpg)'>
- <a href='https://grails.apache.org/blog/2016-04-01-2.html'>
+ <a href='https://grails.apache.org/blog/2016-04-01-1.html'>
<h3>April 1, 2016</h3>
- <h2>Quickcast #2: JSON Views</h2>
+ <h2>Quickcast #1: Grails® Interceptors</h2>
</a>
</article></div></div>
</div>
diff --git a/download.html b/download.html
index 528dc2adbd3..8c0760cdb3d 100644
--- a/download.html
+++ b/download.html
@@ -125,43 +125,43 @@ Companies deploy assistants like this [](https://kapa.ai)
on docs via [website w
<ul>
<li>
<a
href='https://www.apache.org/dyn/closer.lua/grails/core/7.0.5/sources/apache-grails-7.0.5-src.zip?action=download'>Source</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/core/7.0.5/sources/apache-grails-7.0.5-src.zip.sha512?action=download'>SHA512</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/core/7.0.5/sources/apache-grails-7.0.5-src.zip.asc?action=download'>ASC</a>
+ <a
href='https://downloads.apache.org/grails/core/7.0.5/sources/apache-grails-7.0.5-src.zip.sha512'>SHA512</a>
+ <a
href='https://downloads.apache.org/grails/core/7.0.5/sources/apache-grails-7.0.5-src.zip.asc'>ASC</a>
</li>
<li>
<a
href='https://www.apache.org/dyn/closer.lua/grails/core/7.0.5/distribution/apache-grails-7.0.5-bin.zip?action=download'>Binary</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/core/7.0.5/distribution/apache-grails-7.0.5-bin.zip.sha512?action=download'>SHA512</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/core/7.0.5/distribution/apache-grails-7.0.5-bin.zip.asc?action=download'>ASC</a>
+ <a
href='https://downloads.apache.org/grails/core/7.0.5/distribution/apache-grails-7.0.5-bin.zip.sha512'>SHA512</a>
+ <a
href='https://downloads.apache.org/grails/core/7.0.5/distribution/apache-grails-7.0.5-bin.zip.asc'>ASC</a>
</li>
<li>
<a
href='https://www.apache.org/dyn/closer.lua/grails/core/7.0.5/distribution/apache-grails-wrapper-7.0.5-bin.zip?action=download'>Binary
Wrapper</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/core/7.0.5/distribution/apache-grails-wrapper-7.0.5-bin.zip.sha512?action=download'>SHA512</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/core/7.0.5/distribution/apache-grails-wrapper-7.0.5-bin.zip.asc?action=download'>ASC</a>
+ <a
href='https://downloads.apache.org/grails/core/7.0.5/distribution/apache-grails-wrapper-7.0.5-bin.zip.sha512'>SHA512</a>
+ <a
href='https://downloads.apache.org/grails/core/7.0.5/distribution/apache-grails-wrapper-7.0.5-bin.zip.asc'>ASC</a>
</li>
<li>
<a
href='https://www.apache.org/dyn/closer.lua/grails/spring-security/7.0.0/sources/apache-grails-spring-security-7.0.0-src.zip?action=download'>Grails
Spring Security 7.0.0 Plugin Source</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/spring-security/7.0.0/sources/apache-grails-spring-security-7.0.0-src.zip.sha512?action=download'>SHA512</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/spring-security/7.0.0/sources/apache-grails-spring-security-7.0.0-src.zip.asc?action=download'>ASC</a>
+ <a
href='https://downloads.apache.org/grails/spring-security/7.0.0/sources/apache-grails-spring-security-7.0.0-src.zip.sha512'>SHA512</a>
+ <a
href='https://downloads.apache.org/grails/spring-security/7.0.0/sources/apache-grails-spring-security-7.0.0-src.zip.asc'>ASC</a>
</li>
<li>
<a
href='https://www.apache.org/dyn/closer.lua/grails/redis/5.0.0/sources/apache-grails-redis-5.0.0-src.zip?action=download'>Grails
Redis 5.0.0 Plugin Source</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/redis/5.0.0/sources/apache-grails-redis-5.0.0-src.zip.sha512?action=download'>SHA512</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/redis/5.0.0/sources/apache-grails-redis-5.0.0-src.zip.asc?action=download'>ASC</a>
+ <a
href='https://downloads.apache.org/grails/redis/5.0.0/sources/apache-grails-redis-5.0.0-src.zip.sha512'>SHA512</a>
+ <a
href='https://downloads.apache.org/grails/redis/5.0.0/sources/apache-grails-redis-5.0.0-src.zip.asc'>ASC</a>
</li>
<li>
<a
href='https://www.apache.org/dyn/closer.lua/grails/quartz/4.0.0/sources/apache-grails-quartz-4.0.0-src.zip?action=download'>Grails
Quartz 4.0.0 Plugin Source</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/quartz/4.0.0/sources/apache-grails-quartz-4.0.0-src.zip.sha512?action=download'>SHA512</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/quartz/4.0.0/sources/apache-grails-quartz-4.0.0-src.zip.asc?action=download'>ASC</a>
+ <a
href='https://downloads.apache.org/grails/quartz/4.0.0/sources/apache-grails-quartz-4.0.0-src.zip.sha512'>SHA512</a>
+ <a
href='https://downloads.apache.org/grails/quartz/4.0.0/sources/apache-grails-quartz-4.0.0-src.zip.asc'>ASC</a>
</li>
<li>
<a
href='https://www.apache.org/dyn/closer.lua/grails/actions/1.0.1/sources/apache-grails-github-actions-1.0.1-src.zip?action=download'>Grails
GitHub Actions 1.0.1 Source</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/actions/1.0.1/sources/apache-grails-github-actions-1.0.1-src.zip.sha512?action=download'>SHA512</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/actions/1.0.1/sources/apache-grails-github-actions-1.0.1-src.zip.asc?action=download'>ASC</a>
+ <a
href='https://downloads.apache.org/grails/actions/1.0.1/sources/apache-grails-github-actions-1.0.1-src.zip.sha512'>SHA512</a>
+ <a
href='https://downloads.apache.org/grails/actions/1.0.1/sources/apache-grails-github-actions-1.0.1-src.zip.asc'>ASC</a>
</li>
<li>
<a
href='https://www.apache.org/dyn/closer.lua/grails/grails-publish/0.0.4/sources/apache-grails-publish-0.0.4-src.zip?action=download'>Grails
Publish Gradle Plugin 0.0.4 Source</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/grails-publish/0.0.4/sources/apache-grails-publish-0.0.4-src.zip.sha512?action=download'>SHA512</a>
- <a
href='https://www.apache.org/dyn/closer.lua/grails/grails-publish/0.0.4/sources/apache-grails-publish-0.0.4-src.zip.asc?action=download'>ASC</a>
+ <a
href='https://downloads.apache.org/grails/grails-publish/0.0.4/sources/apache-grails-publish-0.0.4-src.zip.sha512'>SHA512</a>
+ <a
href='https://downloads.apache.org/grails/grails-publish/0.0.4/sources/apache-grails-publish-0.0.4-src.zip.asc'>ASC</a>
</li>
<li>
<a
href='https://github.com/apache/grails-core/releases/tag/v7.0.5'>Grails Release
Notes</a>
diff --git a/foundation/minutes.xml b/foundation/minutes.xml
index e6c7408e5fa..f012767e904 100644
--- a/foundation/minutes.xml
+++ b/foundation/minutes.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><rss
xmlns:content="http://purl.org/rss/1.0/modules/content/"
version="2.0"><channel><title>Foundation | Grails
Framework</title><link>https://grails.apache.org</link><description>A powerful
Groovy-based web application framework for the JVM built on top of Spring
Boot</description><pubDate>Tue, 13 Jan 2026 14:10:50
GMT</pubDate><item><title>Technology Advisory Board
Meeting</title><link>https://grails.apache.org/foundation/minutes/20221128-tab.html<
[...]
+<?xml version="1.0" encoding="UTF-8"?><rss
xmlns:content="http://purl.org/rss/1.0/modules/content/"
version="2.0"><channel><title>Foundation | Grails
Framework</title><link>https://grails.apache.org</link><description>A powerful
Groovy-based web application framework for the JVM built on top of Spring
Boot</description><pubDate>Tue, 13 Jan 2026 15:40:43
GMT</pubDate><item><title>Technology Advisory Board
Meeting</title><link>https://grails.apache.org/foundation/minutes/20221128-tab.html<
[...]
<h3>Meeting Attendance:</h3>
<ul>
<li><strong>Puneet Behl</strong> - Grails Product Development Lead at Object
Computing</li>
diff --git a/rss.xml b/rss.xml
index dba55f45dfc..6fb1e8ceb80 100644
--- a/rss.xml
+++ b/rss.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?><rss
xmlns:content="http://purl.org/rss/1.0/modules/content/"
version="2.0"><channel><title>Blog | Grails
Framework</title><link>https://grails.apache.org</link><description>A powerful
Groovy-based web application framework for the JVM built on top of Spring
Boot</description><pubDate>Tue, 13 Jan 2026 14:10:53
GMT</pubDate><item><title>Apache Grails [%version] - Release
Announcement</title><link>https://grails.apache.org/blog/2025-10-18-introducing-g
[...]
+<?xml version="1.0" encoding="UTF-8"?><rss
xmlns:content="http://purl.org/rss/1.0/modules/content/"
version="2.0"><channel><title>Blog | Grails
Framework</title><link>https://grails.apache.org</link><description>A powerful
Groovy-based web application framework for the JVM built on top of Spring
Boot</description><pubDate>Tue, 13 Jan 2026 15:40:46
GMT</pubDate><item><title>Apache Grails [%version] - Release
Announcement</title><link>https://grails.apache.org/blog/2025-10-18-introducing-g
[...]
<p>The Apache Grails community is excited to announce the 7.0.0 release of the
Apache Grails Framework!</p>
<p>This achievement reflects the dedication of our community and underscores
the strength of the ASF's open source ecosystems.</p>
<p>Thousands, upon thousands, of hours have gone into this release, and we are
incredibly grateful to everyone who contributed their time and expertise to
make it happen.</p>
@@ -5184,18 +5184,18 @@ info.app.grailsVersion=3.2.5
<p>GORM 6.1 will become the default version of GORM to be used in the upcoming
Grails 3.3, in the meantime you can use GORM 6.1 in Grails 3.2 simply by
changing the <code>gormVersion</code> setting in
<code>gradle.properties</code>:</p>
<pre><code class="language-groovy">gormVersion=6.1.0.RELEASE
</code></pre>
-<p>To celebrate the release we have prepared the first of a series of new
guides to cover GORM 6.1. Among the many new features are huge improvements to
support Neo4j. Using the official Neo4j sample application, the new guide
describes how you can <a
href="https://guides.grails.org/neo4j-movies/guide/index.html">build a graph
application with the Grails framework, GORM 6.1 and Neo4j</a>!
Enjoy!</p>]]></description><author>Graeme
Rocher</author><guid>2017-03-27</guid><pubDate>Mon, 27 Mar [...]
+<p>To celebrate the release we have prepared the first of a series of new
guides to cover GORM 6.1. Among the many new features are huge improvements to
support Neo4j. Using the official Neo4j sample application, the new guide
describes how you can <a
href="https://guides.grails.org/neo4j-movies/guide/index.html">build a graph
application with the Grails framework, GORM 6.1 and Neo4j</a>!
Enjoy!</p>]]></description><author>Graeme
Rocher</author><guid>2017-03-27</guid><pubDate>Mon, 27 Mar [...]
+<p>Tags: <a href="https://grails.apache.org/blog/tag/quickcast.html"><span
class="hashtag">#quickcast</span></a></p>
+<p>In this video, Grails<sup>®</sup> framework co-founder Graeme Rocher walks
you through multi-project builds in Grails apps.</p>
+<p>The Grails framework does a few handy things with multi-project builds and
plugins, not the least of which being that Grails compiles your plugins first
and puts the class and resources of those plugins directly in the classpath.
This lets you make changes to your plugins and instantly see those changes in
your build.</p>
+<p>Grails Quickcasts, brought to you through a partnership between <a
href="https://objectcomputing.com/">Object Computing, Inc.</a> (OCI) and <a
href="https://dzone.com/">DZone</a>, provide bite-sized tutorials to help you
maximize your productivity with the Framework.</p>
+<iframe width="100%" height="560"
src="https://www.youtube-nocookie.com/embed/yNA0ce5fG9s"
frameborder="0"></iframe>]]></description><author>Graeme
Rocher</author><guid>2017-01-20-1</guid><pubDate>Fri, 20 Jan 2017 00:00:00
GMT</pubDate></item><item><title>Quickcast #5: Retrieving Runtime Config Values
in Grails®
3</title><link>https://grails.apache.org/blog/2017-01-20-3.html</link><description><![CDATA[</p>
<p>Tags: <a href="https://grails.apache.org/blog/tag/quickcast.html"><span
class="hashtag">#quickcast</span></a></p>
<p>In this short video tutorial, Grails<sup>®</sup> framework co-founder, <a
href="https://objectcomputing.com/products/2gm-team#brown">Jeff Scott
Brown</a>, highlights some of the great features of the Grails framework.</p>
<p>In fewer than 18 minutes, Jeff describes several techniques for retrieving
configuration values at runtime and discusses the pros and cons of each. Visit
<a
href="https://objectcomputing.com/news/2016/08/31/retrieving-config-values-grails-3">this
Grails blog post</a> for an accompanying article.</p>
<p>For this Quickcast, you’ll need no more than a basic understanding of the
Grails framework.</p>
<p>Grails Quickcasts, brought to you through a partnership between <a
href="https://objectcomputing.com/">Object Computing, Inc.</a> (OCI) and <a
href="https://dzone.com/">DZone</a>, provide bite-sized tutorials to help you
maximize your productivity with the Framework.</p>
-<iframe width="100%" height="560"
src="https://www.youtube-nocookie.com/embed/Qw5hjwT9EOc"
frameborder="0"></iframe>]]></description><author>Jeff Scott
Brown</author><guid>2017-01-20-3</guid><pubDate>Fri, 20 Jan 2017 00:00:00
GMT</pubDate></item><item><title>Quickcast #3: Multi-Project
Builds</title><link>https://grails.apache.org/blog/2017-01-20-1.html</link><description><![CDATA[</p>
-<p>Tags: <a href="https://grails.apache.org/blog/tag/quickcast.html"><span
class="hashtag">#quickcast</span></a></p>
-<p>In this video, Grails<sup>®</sup> framework co-founder Graeme Rocher walks
you through multi-project builds in Grails apps.</p>
-<p>The Grails framework does a few handy things with multi-project builds and
plugins, not the least of which being that Grails compiles your plugins first
and puts the class and resources of those plugins directly in the classpath.
This lets you make changes to your plugins and instantly see those changes in
your build.</p>
-<p>Grails Quickcasts, brought to you through a partnership between <a
href="https://objectcomputing.com/">Object Computing, Inc.</a> (OCI) and <a
href="https://dzone.com/">DZone</a>, provide bite-sized tutorials to help you
maximize your productivity with the Framework.</p>
-<iframe width="100%" height="560"
src="https://www.youtube-nocookie.com/embed/yNA0ce5fG9s"
frameborder="0"></iframe>]]></description><author>Graeme
Rocher</author><guid>2017-01-20-1</guid><pubDate>Fri, 20 Jan 2017 00:00:00
GMT</pubDate></item><item><title>Quickcast #6: Developing Grails® 3
Applications with IntelliJ
IDEA</title><link>https://grails.apache.org/blog/2017-01-20-4.html</link><description><![CDATA[</p>
+<iframe width="100%" height="560"
src="https://www.youtube-nocookie.com/embed/Qw5hjwT9EOc"
frameborder="0"></iframe>]]></description><author>Jeff Scott
Brown</author><guid>2017-01-20-3</guid><pubDate>Fri, 20 Jan 2017 00:00:00
GMT</pubDate></item><item><title>Quickcast #6: Developing Grails® 3
Applications with IntelliJ
IDEA</title><link>https://grails.apache.org/blog/2017-01-20-4.html</link><description><![CDATA[</p>
<p>Tags: <a href="https://grails.apache.org/blog/tag/quickcast.html"><span
class="hashtag">#quickcast</span></a></p>
<p>Grails<sup>®</sup> 3 is a high-productivity framework for building web
applications for the JVM.</p>
<p>IntelliJ IDEA is a high-productivity Integrated Development Environment
(IDE) for building a variety of application types. IDEA has always had great
support for building Grails applications and, in particular, has the best
support of any IDE for developing with Grails 3.</p>
@@ -7458,13 +7458,7 @@ json {
<li>view_name.gson (Example: show.gson)</li>
</ul>
<p>The content type (defined by either the <code>ACCEPT</code> header or file
extension in the URI) is taken into account to allow different formats for the
same view.</p>
-<p>For more detail, see <a
href="https://grails.github.io/grails-views/latest/">the official
documentation</a>.</p>]]></description><author>Jeff Scott
Brown</author><guid>2016-04-13</guid><pubDate>Wed, 13 Apr 2016 00:00:00
GMT</pubDate></item><item><title>Quickcast #1: Grails®
Interceptors</title><link>https://grails.apache.org/blog/2016-04-01-1.html</link><description><![CDATA[</p>
-<p>Tags: <a href="https://grails.apache.org/blog/tag/quickcast.html"><span
class="hashtag">#quickcast</span></a></p>
-<p>In this 17-minute video, the Grails<sup>®</sup> framework co-founder, <a
href="https://objectcomputing.com/products/2gm-team#brown">Jeff Scott
Brown</a>, talks Grails <a
href="https://en.wikipedia.org/wiki/Interceptor_pattern">interceptors</a>.</p>
-<p>(Yes, <code>create-interceptor</code> actually creates an interceptor.
Mind. Blown.)</p>
-<p>This tutorial assumes only basic familiarity with Groovy (which is pretty
darned expressive anyway) and the MVC concept (which you already know). It also
serves as an excellent introduction to the interceptor pattern in any language,
because Grails' behind-the-scenes legwork lets you focus on the logic of the
pattern.</p>
-<p>Grails Quickcasts, brought to you through a partnership between <a
href="https://objectcomputing.com/">Object Computing, Inc.</a> (OCI) and <a
href="https://dzone.com/">DZone</a>, provide bite-sized tutorials to help you
maximize your productivity with the Framework.</p>
-<iframe width="100%" height="560"
src="https://www.youtube-nocookie.com/embed/XnRNfDGkBVg"
frameborder="0"></iframe>]]></description><author>Jeff Scott
Brown</author><guid>2016-04-01-1</guid><pubDate>Fri, 01 Apr 2016 00:00:00
GMT</pubDate></item><item><title>Quickcast #2: JSON
Views</title><link>https://grails.apache.org/blog/2016-04-01-2.html</link><description><![CDATA[</p>
+<p>For more detail, see <a
href="https://grails.github.io/grails-views/latest/">the official
documentation</a>.</p>]]></description><author>Jeff Scott
Brown</author><guid>2016-04-13</guid><pubDate>Wed, 13 Apr 2016 00:00:00
GMT</pubDate></item><item><title>Quickcast #2: JSON
Views</title><link>https://grails.apache.org/blog/2016-04-01-2.html</link><description><![CDATA[</p>
<p>Tags: <a href="https://grails.apache.org/blog/tag/quickcast.html"><span
class="hashtag">#quickcast</span></a> <a
href="https://grails.apache.org/blog/tag/json.html"><span
class="hashtag">#json</span></a></p>
<p>In a delightful and informative 15 minutes, the Grails<sup>®</sup>
framework co-founder, <a
href="https://objectcomputing.com/products/2gm-team#brown">Jeff Scott
Brown</a>, probes JSON views.</p>
<p>Beginning with a Grails 3.1.1 application created with a standard web
profile, Jeff demonstrates how to add a few custom domain classes.</p>
@@ -7473,7 +7467,13 @@ json {
<p>While the app is running in development mode, the JSON files can be
altered, and the effects of those changes can be seen real-time in the
application.</p>
<p>This Quickcast assumes basic knowledge of Grails, JSON, and REST APIs.</p>
<p>Grails Quickcasts, brought to you through a partnership between <a
href="https://objectcomputing.com/">Object Computing, Inc.</a> (OCI) and <a
href="https://dzone.com/">DZone</a>, provide bite-sized tutorials to help you
maximize your productivity with the Framework.</p>
-<iframe width="100%" height="560"
src="https://www.youtube-nocookie.com/embed/XnRNfDGkBVg"
frameborder="0"></iframe>]]></description><author>Jeff Scott
Brown</author><guid>2016-04-01-2</guid><pubDate>Fri, 01 Apr 2016 00:00:00
GMT</pubDate></item><item><title>Grails® 3
Interceptors</title><link>https://grails.apache.org/blog/2015-03-01.html</link><description><![CDATA[</p>
+<iframe width="100%" height="560"
src="https://www.youtube-nocookie.com/embed/XnRNfDGkBVg"
frameborder="0"></iframe>]]></description><author>Jeff Scott
Brown</author><guid>2016-04-01-2</guid><pubDate>Fri, 01 Apr 2016 00:00:00
GMT</pubDate></item><item><title>Quickcast #1: Grails®
Interceptors</title><link>https://grails.apache.org/blog/2016-04-01-1.html</link><description><![CDATA[</p>
+<p>Tags: <a href="https://grails.apache.org/blog/tag/quickcast.html"><span
class="hashtag">#quickcast</span></a></p>
+<p>In this 17-minute video, the Grails<sup>®</sup> framework co-founder, <a
href="https://objectcomputing.com/products/2gm-team#brown">Jeff Scott
Brown</a>, talks Grails <a
href="https://en.wikipedia.org/wiki/Interceptor_pattern">interceptors</a>.</p>
+<p>(Yes, <code>create-interceptor</code> actually creates an interceptor.
Mind. Blown.)</p>
+<p>This tutorial assumes only basic familiarity with Groovy (which is pretty
darned expressive anyway) and the MVC concept (which you already know). It also
serves as an excellent introduction to the interceptor pattern in any language,
because Grails' behind-the-scenes legwork lets you focus on the logic of the
pattern.</p>
+<p>Grails Quickcasts, brought to you through a partnership between <a
href="https://objectcomputing.com/">Object Computing, Inc.</a> (OCI) and <a
href="https://dzone.com/">DZone</a>, provide bite-sized tutorials to help you
maximize your productivity with the Framework.</p>
+<iframe width="100%" height="560"
src="https://www.youtube-nocookie.com/embed/XnRNfDGkBVg"
frameborder="0"></iframe>]]></description><author>Jeff Scott
Brown</author><guid>2016-04-01-1</guid><pubDate>Fri, 01 Apr 2016 00:00:00
GMT</pubDate></item><item><title>Grails® 3
Interceptors</title><link>https://grails.apache.org/blog/2015-03-01.html</link><description><![CDATA[</p>
<h2>Introduction</h2>
<p>Grails<sup>®</sup> 3 is a major step forward in the evolution of the
framework and re-evaluates many aspects of the framework that have evolved over
the years. One area of the framework that was re-evaluated is that related to
Grails filters.</p>
<p>Grails filters are a lot like servlet filters but are more simple and are
better integrated into the Grails runtime and its conventions. Grails filters
were a way to implement logic that might relate to any number of controllers
and were a powerful and flexible way to address many of those concerns. Grails
3 introduces the notion of interceptors as a better way to address many of the
types of concerns that previously would have been addressed with filters.</p>