This is an automated email from the ASF dual-hosted git repository. lukaszlenart pushed a commit to branch fix/sitemesh in repository https://gitbox.apache.org/repos/asf/struts-site.git
commit 156ce676bc3ee90a1f8005ea8e0dddc5d2036b34 Author: Lukasz Lenart <lukaszlen...@apache.org> AuthorDate: Sat Apr 20 15:39:02 2024 +0200 Fixes reference to the new filters and update plugins' layout --- source/_layouts/plugin.html | 59 ----------------------------- source/core-developers/web-xml.md | 11 +++--- source/plugins/async/index.md | 2 +- source/plugins/bean-validation/index.md | 2 +- source/plugins/cdi/index.md | 2 +- source/plugins/codebehind/index.md | 2 +- source/plugins/config-browser/index.md | 2 +- source/plugins/convention/converting.md | 3 ++ source/plugins/convention/index.md | 2 +- source/plugins/dwr/index.md | 2 +- source/plugins/embedded-jsp/index.md | 2 +- source/plugins/jasperreports/index.md | 2 +- source/plugins/java-8-support/index.md | 2 +- source/plugins/javatemplates/index.md | 2 +- source/plugins/jfreechart/index.md | 2 +- source/plugins/jsf/index.md | 2 +- source/plugins/json/index.md | 2 +- source/plugins/json/json-ajax-validation.md | 2 +- source/plugins/junit/index.md | 2 +- source/plugins/osgi/index.md | 2 +- source/plugins/oval/index.md | 2 +- source/plugins/plexus/index.md | 2 +- source/plugins/portlet-tiles/index.md | 2 +- source/plugins/portlet/index.md | 2 +- source/plugins/rest/index.md | 2 +- source/plugins/sitegraph/index.md | 2 +- source/plugins/sitemesh/index.md | 52 ++++++++++++------------- source/plugins/spring/index.md | 2 +- source/plugins/struts-1/index.md | 2 +- source/plugins/testng/index.md | 2 +- source/plugins/tiles-3/index.md | 2 +- source/plugins/tiles/index.md | 2 +- 32 files changed, 61 insertions(+), 120 deletions(-) diff --git a/source/_layouts/plugin.html b/source/_layouts/plugin.html deleted file mode 100644 index b7ecc649e..000000000 --- a/source/_layouts/plugin.html +++ /dev/null @@ -1,59 +0,0 @@ -<!DOCTYPE html> -<html lang="en"> -<head> - <meta charset="UTF-8"/> - <meta name="viewport" content="width=device-width, initial-scale=1.0"/> - <meta name="Date-Revision-yyyymmdd" content="20140918"/> - <meta http-equiv="Content-Language" content="en"/> - <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> - - <title>{{ page.title }}</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"> - <link href="/css/main.css" rel="stylesheet"> - <link href="/css/custom.css" rel="stylesheet"> - <link href="/highlighter/github-theme.css" rel="stylesheet"> - - <script src="//code.jquery.com/jquery-1.11.0.min.js"></script> - <script type="text/javascript" src="/bootstrap/js/bootstrap.js"></script> - <script type="text/javascript" src="/js/community.js"></script> - - <!-- Matomo --> - <script> - var _paq = window._paq = window._paq || []; - /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ - /* We explicitly disable cookie tracking to avoid privacy issues */ - _paq.push(['disableCookies']); - _paq.push(['trackPageView']); - _paq.push(['enableLinkTracking']); - (function() { - var u="//analytics.apache.org/"; - _paq.push(['setTrackerUrl', u+'matomo.php']); - _paq.push(['setSiteId', '41']); - var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; - g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s); - })(); - </script> - <!-- End Matomo Code --> -</head> -<body> - -{% include header.html %} - -<article class="container"> - <section class="col-md-12"> - <a class="edit-on-gh" href="{{ site.repository_url }}/edit/master/source/{{ page.path }}" title="Edit this page on GitHub">Edit on GitHub</a> - {% if page.parent %} - <a href="{{ page.parent.url }}" title="back to {{ page.parent.title }}"><< back to {{ page.parent.title }}</a> - {% else %} - <a href="../" title="back to Plugins"><< back to Plugins</a> - {% endif %} - {{ content }} - </section> -</article> - -{% include footer.html %} - -</body> -</html> diff --git a/source/core-developers/web-xml.md b/source/core-developers/web-xml.md index 5e947b663..38dd4e64e 100644 --- a/source/core-developers/web-xml.md +++ b/source/core-developers/web-xml.md @@ -10,10 +10,11 @@ title: web.xml {:toc} The `web.xml` web application descriptor file represents the core of the Java web application, so it is appropriate -that it is also part of the core of the Struts framework. In the `web.xml` file, Struts defines its FilterDispatcher, -the Servlet Filter class that initializes the Struts framework and handles all requests. This filter can contain -initialization parameters that affect what, if any, additional configuration files are loaded and how the framework -should behave. +that it is also part of the core of the Struts framework. In the `web.xml` file you can use one of the two options: +1. Configure `org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter` which acts as a central + point of initializing the Struts framework and handles all requests. +2. Use combination of `org.apache.struts2.dispatcher.filter.StrutsPrepareFilter` and `org.apache.struts2.dispatcher.filter.StrutsExecuteFilter` + to support custom integration with other frameworks like Sitemesh. ## Simple Example @@ -43,7 +44,7 @@ Configuring `web.xml` for the framework is a matter of adding a filter and filte </web-app> ``` -See [SiteMesh Plugin](../plugins/sitemesh-plugin) for an example on when to use separate Filters for prepare and execution phase. +See [SiteMesh Plugin](../plugins/sitemesh/) for an example on when to use separate Filters for prepare and execution phase. ## Custom mapping diff --git a/source/plugins/async/index.md b/source/plugins/async/index.md index 7c19b29e4..69d0286fc 100644 --- a/source/plugins/async/index.md +++ b/source/plugins/async/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: Async Plugin parent: url: /plugins diff --git a/source/plugins/bean-validation/index.md b/source/plugins/bean-validation/index.md index 51a6064e4..3bfc259c9 100644 --- a/source/plugins/bean-validation/index.md +++ b/source/plugins/bean-validation/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: Bean Validation Plugin parent: url: /plugins diff --git a/source/plugins/cdi/index.md b/source/plugins/cdi/index.md index e26cd3be1..3e74d5389 100644 --- a/source/plugins/cdi/index.md +++ b/source/plugins/cdi/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: CDI Plugin parent: url: /plugins diff --git a/source/plugins/codebehind/index.md b/source/plugins/codebehind/index.md index b4a785a39..3211ea590 100644 --- a/source/plugins/codebehind/index.md +++ b/source/plugins/codebehind/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: Codebehind Plugin parent: url: /plugins diff --git a/source/plugins/config-browser/index.md b/source/plugins/config-browser/index.md index 6e13b7977..b5bbbe9a8 100644 --- a/source/plugins/config-browser/index.md +++ b/source/plugins/config-browser/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: Config Browser Plugin parent: url: /plugins diff --git a/source/plugins/convention/converting.md b/source/plugins/convention/converting.md index 1f45d2bbd..60f9b2d50 100644 --- a/source/plugins/convention/converting.md +++ b/source/plugins/convention/converting.md @@ -1,6 +1,9 @@ --- layout: default title: Converting application from Codebehind to Convention Plugin (WIP) +parent: + url: index + title: Convention plugin --- [<< back to Convention Plugin](./) diff --git a/source/plugins/convention/index.md b/source/plugins/convention/index.md index c022b7dff..971881d74 100644 --- a/source/plugins/convention/index.md +++ b/source/plugins/convention/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: Convention plugin parent: url: /plugins diff --git a/source/plugins/dwr/index.md b/source/plugins/dwr/index.md index 5750205cf..caebb6b1e 100644 --- a/source/plugins/dwr/index.md +++ b/source/plugins/dwr/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: DWR Plugin parent: url: /plugins diff --git a/source/plugins/embedded-jsp/index.md b/source/plugins/embedded-jsp/index.md index 8fa8cc7b8..fe1f5387f 100644 --- a/source/plugins/embedded-jsp/index.md +++ b/source/plugins/embedded-jsp/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: Embedded JSP Plugin parent: url: /plugins diff --git a/source/plugins/jasperreports/index.md b/source/plugins/jasperreports/index.md index 34086084b..fa5e47237 100644 --- a/source/plugins/jasperreports/index.md +++ b/source/plugins/jasperreports/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: JasperReports Plugin parent: url: /plugins diff --git a/source/plugins/java-8-support/index.md b/source/plugins/java-8-support/index.md index 30b36c10e..99908658c 100644 --- a/source/plugins/java-8-support/index.md +++ b/source/plugins/java-8-support/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: Java 8 Support Plugin parent: url: /plugins diff --git a/source/plugins/javatemplates/index.md b/source/plugins/javatemplates/index.md index 664fe7498..a2bbe5f27 100644 --- a/source/plugins/javatemplates/index.md +++ b/source/plugins/javatemplates/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: Javatemplates Plugin parent: url: /plugins diff --git a/source/plugins/jfreechart/index.md b/source/plugins/jfreechart/index.md index 12be296e9..7701af1be 100644 --- a/source/plugins/jfreechart/index.md +++ b/source/plugins/jfreechart/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: JFreeChart Plugin parent: url: /plugins diff --git a/source/plugins/jsf/index.md b/source/plugins/jsf/index.md index 0daa9f061..2ed7e0f63 100644 --- a/source/plugins/jsf/index.md +++ b/source/plugins/jsf/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: JSF Plugin parent: url: /plugins diff --git a/source/plugins/json/index.md b/source/plugins/json/index.md index 728664fd4..e7b473066 100644 --- a/source/plugins/json/index.md +++ b/source/plugins/json/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: JSON plugin parent: url: /plugins diff --git a/source/plugins/json/json-ajax-validation.md b/source/plugins/json/json-ajax-validation.md index 80e621808..9409515f3 100644 --- a/source/plugins/json/json-ajax-validation.md +++ b/source/plugins/json/json-ajax-validation.md @@ -3,7 +3,7 @@ layout: plugin title: JSON Ajax validation parent: title: JSON plugin - url: index.html + url: index --- # JSON Ajax Validation diff --git a/source/plugins/junit/index.md b/source/plugins/junit/index.md index 225905e38..ab1d76f85 100644 --- a/source/plugins/junit/index.md +++ b/source/plugins/junit/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: JUnit plugin parent: url: /plugins diff --git a/source/plugins/osgi/index.md b/source/plugins/osgi/index.md index 08b4574da..6f63f693e 100644 --- a/source/plugins/osgi/index.md +++ b/source/plugins/osgi/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: OSGi Plugin parent: url: /plugins diff --git a/source/plugins/oval/index.md b/source/plugins/oval/index.md index 43dddf7c2..c234239a9 100644 --- a/source/plugins/oval/index.md +++ b/source/plugins/oval/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: OVal Plugin parent: url: /plugins diff --git a/source/plugins/plexus/index.md b/source/plugins/plexus/index.md index 384d905ec..1bcd77090 100644 --- a/source/plugins/plexus/index.md +++ b/source/plugins/plexus/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: Plexus Plugin parent: url: /plugins diff --git a/source/plugins/portlet-tiles/index.md b/source/plugins/portlet-tiles/index.md index e385550da..f36ecb79a 100644 --- a/source/plugins/portlet-tiles/index.md +++ b/source/plugins/portlet-tiles/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: Portlet Tiles Plugin parent: url: /plugins diff --git a/source/plugins/portlet/index.md b/source/plugins/portlet/index.md index 711a83b30..c07547ce9 100644 --- a/source/plugins/portlet/index.md +++ b/source/plugins/portlet/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: Portlet Plugin parent: url: /plugins diff --git a/source/plugins/rest/index.md b/source/plugins/rest/index.md index 5c903ffff..681334585 100644 --- a/source/plugins/rest/index.md +++ b/source/plugins/rest/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: REST Plugin parent: url: /plugins diff --git a/source/plugins/sitegraph/index.md b/source/plugins/sitegraph/index.md index 4dcfc2065..3eb002b02 100644 --- a/source/plugins/sitegraph/index.md +++ b/source/plugins/sitegraph/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: SiteGraph Plugin parent: url: /plugins diff --git a/source/plugins/sitemesh/index.md b/source/plugins/sitemesh/index.md index 5a32f521d..4207f4705 100644 --- a/source/plugins/sitemesh/index.md +++ b/source/plugins/sitemesh/index.md @@ -1,9 +1,9 @@ --- -layout: plugin +layout: default title: SiteMesh Plugin parent: - url: /plugins title: Plugins + url: /plugins --- # SiteMesh Plugin @@ -12,12 +12,11 @@ parent: * Will be replaced with the ToC, excluding a header {:toc} -> This plugin got marked as deprecated since Struts 2.6! - ## About SiteMesh > [SiteMesh](http://www.sitemesh.org/) is a web-page layout and decoration > framework and web application integration -> framework to aid in creating large sites consisting of many pages for which a consistent look/feel, navigation and layout scheme is required. +> framework to aid in creating large sites consisting of many pages for which a consistent look/feel, navigation +> and layout scheme is required. The Sitemesh plugin allows Sitemesh templates to access framework resources. @@ -33,7 +32,7 @@ with the framework. That's it! ## Usage From 2.2+ the new `com.opensymphony.sitemesh.webapp.SiteMeshFilter` filter -and Struts `org.apache.struts2.dispatcher.ng.listener.StrutsListener` context listener must be added to `web.xml`, like: +and Struts `org.apache.struts2.dispatcher.listener.StrutsListener` context listener must be added to `web.xml`, like: ```xml <filter> @@ -42,15 +41,15 @@ and Struts `org.apache.struts2.dispatcher.ng.listener.StrutsListener` context li </filter> ... <listener> - <listener-class>org.apache.struts2.dispatcher.ng.listener.StrutsListener</listener-class> + <listener-class>org.apache.struts2.dispatcher.listener.StrutsListener</listener-class> </listener> ``` -## FreeMarker and Velocity Decorators +## FreeMarker and Velocity Decorators -The plugin provides an extension of the SiteMesh _Velocity_ and _FreeMarker_ servlets. These servlets provide -the standard variables and _Struts Tags_ that you used to create views in your favourite template language. +The plugin provides an extension of the SiteMesh _Velocity_ and _FreeMarker_ servlets. These servlets provide +the standard variables and _Struts Tags_ that you used to create views in your favourite template language. ### FreeMarker @@ -84,13 +83,12 @@ From 2.2+ the recommended way to use Velocity with Sitemesh is through the `org. servlet, which can be configured like this in `web.xml`: ```xml - <servlet> <servlet-name>sitemesh-freemarker</servlet-name> <servlet-class>org.apache.struts2.sitemesh.VelocityDecoratorServlet</servlet-class> <init-param> - <param-name>default_encoding</param-name> - <param-value>UTF-8</param-value> + <param-name>default_encoding</param-name> + <param-value>UTF-8</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> @@ -98,8 +96,7 @@ servlet, which can be configured like this in `web.xml`: <servlet-mapping> <servlet-name>sitemesh-freemarker</servlet-name> <url-pattern>*.ftl</url-pattern> -</servlet-mapping> - +</servlet-mapping> ``` ### Full integration with SiteMesh 2 + Freemarker 2.4.2 + Velocity 1.3 , including Struts 2 Tags, ValueStack, and FreemarkerManager statics. @@ -107,10 +104,9 @@ servlet, which can be configured like this in `web.xml`: Such configuration is available as from Struts 2.2.0, please refer to [WW-3296](https://issues.apache.org/jira/browse/WW-3296) for me details. ```xml - <filter> <filter-name>struts-prepare</filter-name> - <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilter</filter-class> + <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareFilter</filter-class> </filter> <filter> @@ -120,7 +116,7 @@ Such configuration is available as from Struts 2.2.0, please refer to [WW-3296]( <filter> <filter-name>struts-execute</filter-name> - <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsExecuteFilter</filter-class> + <filter-class>org.apache.struts2.dispatcher.filter.StrutsExecuteFilter</filter-class> </filter> <filter-mapping> @@ -175,12 +171,12 @@ Here is an example of how to configure the filter chains in `web.xml`: ```xml <filter> <filter-name>struts-prepare</filter-name> - <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilter</filter-class> + <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareFilter</filter-class> </filter> <filter> <filter-name>struts-execute</filter-name> - <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsExecuteFilter</filter-class> + <filter-class>org.apache.struts2.dispatcher.filter.StrutsExecuteFilter</filter-class> </filter> @@ -205,7 +201,7 @@ Here is an example of how to configure the filter chains in `web.xml`: </filter-mapping> <listener> - <listener-class>org.apache.struts2.dispatcher.ng.listener.StrutsListener</listener-class> + <listener-class>org.apache.struts2.dispatcher.listener.StrutsListener</listener-class> </listener> <servlet> @@ -245,12 +241,12 @@ Struts 2.1 web.xml filter chain example: ```xml <filter> <filter-name>struts-prepare</filter-name> - <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilter</filter-class> + <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareFilter</filter-class> </filter> <filter> <filter-name>struts-execute</filter-name> - <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsExecuteFilter</filter-class> + <filter-class>org.apache.struts2.dispatcher.filter.StrutsExecuteFilter</filter-class> </filter> <filter> @@ -272,16 +268,15 @@ Struts 2.1 web.xml filter chain example: <filter-name>struts-execute</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> - ``` -You do not need the struts2-sitmesh-plugin if you are using JSP for your decorators. +You do not need the Struts2 Sitmesh plugin if you are using JSP for your decorators. Here are the only changes needed to web.xml ```xml <filter> <filter-name>struts2-prepare</filter-name> - <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilter</filter-class> + <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareFilter</filter-class> </filter> <filter> @@ -291,7 +286,7 @@ Here are the only changes needed to web.xml <filter> <filter-name>struts2-execute</filter-name> - <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsExecuteFilter</filter-class> + <filter-class>org.apache.struts2.dispatcher.filter.StrutsExecuteFilter</filter-class> </filter> <filter-mapping> @@ -320,4 +315,5 @@ This plugin doesn't support any global settings. ## Installation -This plugin can be installed by copying the plugin jar into your application's `/WEB-INF/lib` directory. No other files need to be copied or created. +This plugin can be installed by copying the plugin jar into your application's `/WEB-INF/lib` directory. +No other files need to be copied or created. diff --git a/source/plugins/spring/index.md b/source/plugins/spring/index.md index 51d956eed..476dd2367 100644 --- a/source/plugins/spring/index.md +++ b/source/plugins/spring/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: Spring Plugin parent: url: /plugins diff --git a/source/plugins/struts-1/index.md b/source/plugins/struts-1/index.md index bb8f8a7da..a81c7d67e 100644 --- a/source/plugins/struts-1/index.md +++ b/source/plugins/struts-1/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: Struts 1 Plugin parent: url: /plugins diff --git a/source/plugins/testng/index.md b/source/plugins/testng/index.md index efc041050..c093bb93e 100644 --- a/source/plugins/testng/index.md +++ b/source/plugins/testng/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: TestNG Plugin parent: url: /plugins diff --git a/source/plugins/tiles-3/index.md b/source/plugins/tiles-3/index.md index 725d3c114..a64d5dbb8 100644 --- a/source/plugins/tiles-3/index.md +++ b/source/plugins/tiles-3/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: Tiles 3 Plugin parent: url: /plugins diff --git a/source/plugins/tiles/index.md b/source/plugins/tiles/index.md index cf911cad2..6cb5dfc6c 100644 --- a/source/plugins/tiles/index.md +++ b/source/plugins/tiles/index.md @@ -1,5 +1,5 @@ --- -layout: plugin +layout: default title: Tiles Plugin parent: url: /plugins