blob: 19684281511abf09df276a4cd301a36998c0d0f5 [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>WikiJSPFilter (Apache JSPWiki 2.12.2-SNAPSHOT API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../jquery/jquery-3.5.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="WikiJSPFilter (Apache JSPWiki 2.12.2-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/WikiJSPFilter.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.wiki.ui</a></div>
<h2 title="Class WikiJSPFilter" class="title">Class WikiJSPFilter</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="WikiServletFilter.html" title="class in org.apache.wiki.ui">org.apache.wiki.ui.WikiServletFilter</a></li>
<li>
<ul class="inheritance">
<li>org.apache.wiki.ui.WikiJSPFilter</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code>javax.servlet.Filter</code></dd>
</dl>
<hr>
<object type="image/svg+xml" data="WikiJSPFilter.svg" style="max-width:60%;float:right;"></object>
<pre style="white-space:pre-wrap;">public class <a href="../../../../src-html/org/apache/wiki/ui/WikiJSPFilter.html#line.73">WikiJSPFilter</a>
extends <a href="WikiServletFilter.html" title="class in org.apache.wiki.ui">WikiServletFilter</a></pre>
<div class="block">This filter goes through the generated page response prior and places requested resources at the appropriate inclusion markers.
This is done to let dynamic content (e.g. plugins, editors) include custom resources, even after the HTML head section is
in fact built. This filter is typically the last filter to execute, and it <em>must</em> run after servlet or JSP code that performs
redirections or sends error codes (such as access control methods).
<p>
Inclusion markers are placed by the IncludeResourcesTag; the default content templates (see .../templates/default/commonheader.jsp)
are configured to do this. As an example, a JavaScript resource marker is added like this:
<pre>
&lt;wiki:IncludeResources type="script"/&gt;
</pre>
Any code that requires special resources must register a resource request with the TemplateManager. For example:
<pre>
&lt;wiki:RequestResource type="script" path="scripts/custom.js" /&gt;
</pre>
or programmatically,
<pre>
TemplateManager.addResourceRequest( context, TemplateManager.RESOURCE_SCRIPT, "scripts/customresource.js" );
</pre></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="TemplateManager.html" title="interface in org.apache.wiki.ui"><code>TemplateManager</code></a>,
<a href="../tags/RequestResourceTag.html" title="class in org.apache.wiki.tags"><code>RequestResourceTag</code></a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary" style="clear:right;">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.org.apache.wiki.ui.WikiServletFilter">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.wiki.ui.<a href="WikiServletFilter.html" title="class in org.apache.wiki.ui">WikiServletFilter</a></h3>
<code><a href="WikiServletFilter.html#m_engine">m_engine</a></code></li>
</ul>
</li>
</ul>
</section>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">WikiJSPFilter</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doFilter(javax.servlet.ServletRequest,javax.servlet.ServletResponse,javax.servlet.FilterChain)">doFilter</a></span>&#8203;(javax.servlet.ServletRequest&nbsp;request,
javax.servlet.ServletResponse&nbsp;response,
javax.servlet.FilterChain&nbsp;chain)</code></th>
<td class="colLast">
<div class="block">Checks that the Engine is running ok, wraps the current HTTP request, and sets the correct authentication state for the users's
Session.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#fireEvent(int,java.lang.String)">fireEvent</a></span>&#8203;(int&nbsp;type,
java.lang.String&nbsp;pagename)</code></th>
<td class="colLast">
<div class="block">Fires a WikiPageEvent of the provided type and page name
to all registered listeners of the current Engine.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#init(javax.servlet.FilterConfig)">init</a></span>&#8203;(javax.servlet.FilterConfig&nbsp;config)</code></th>
<td class="colLast">
<div class="block">Initializes the WikiServletFilter.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.wiki.ui.WikiServletFilter">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.wiki.ui.<a href="WikiServletFilter.html" title="class in org.apache.wiki.ui">WikiServletFilter</a></h3>
<code><a href="WikiServletFilter.html#destroy()">destroy</a>, <a href="WikiServletFilter.html#getWikiContext(javax.servlet.ServletRequest)">getWikiContext</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>WikiJSPFilter</h4>
<pre>public&nbsp;<a href="../../../../src-html/org/apache/wiki/ui/WikiJSPFilter.html#line.73">WikiJSPFilter</a>()</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="init(javax.servlet.FilterConfig)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>init</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/wiki/ui/WikiJSPFilter.html#line.80">init</a>&#8203;(javax.servlet.FilterConfig&nbsp;config)
throws javax.servlet.ServletException</pre>
<div class="block">Initializes the WikiServletFilter.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>init</code>&nbsp;in interface&nbsp;<code>javax.servlet.Filter</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="WikiServletFilter.html#init(javax.servlet.FilterConfig)">init</a></code>&nbsp;in class&nbsp;<code><a href="WikiServletFilter.html" title="class in org.apache.wiki.ui">WikiServletFilter</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>config</code> - The FilterConfig.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>javax.servlet.ServletException</code> - If a Engine cannot be started.</dd>
</dl>
</li>
</ul>
<a id="doFilter(javax.servlet.ServletRequest,javax.servlet.ServletResponse,javax.servlet.FilterChain)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doFilter</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/wiki/ui/WikiJSPFilter.html#line.88">doFilter</a>&#8203;(javax.servlet.ServletRequest&nbsp;request,
javax.servlet.ServletResponse&nbsp;response,
javax.servlet.FilterChain&nbsp;chain)
throws javax.servlet.ServletException,
java.io.IOException</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="WikiServletFilter.html#doFilter(javax.servlet.ServletRequest,javax.servlet.ServletResponse,javax.servlet.FilterChain)">WikiServletFilter</a></code></span></div>
<div class="block">Checks that the Engine is running ok, wraps the current HTTP request, and sets the correct authentication state for the users's
Session. First, the method <a href="../auth/AuthenticationManager.html#login(javax.servlet.http.HttpServletRequest)"><code>AuthenticationManager.login(HttpServletRequest)</code></a>
executes, which sets the authentication state. Then, the request is wrapped with a
<a href="WikiRequestWrapper.html" title="class in org.apache.wiki.ui"><code>WikiRequestWrapper</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>doFilter</code>&nbsp;in interface&nbsp;<code>javax.servlet.Filter</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="WikiServletFilter.html#doFilter(javax.servlet.ServletRequest,javax.servlet.ServletResponse,javax.servlet.FilterChain)">doFilter</a></code>&nbsp;in class&nbsp;<code><a href="WikiServletFilter.html" title="class in org.apache.wiki.ui">WikiServletFilter</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>request</code> - the current HTTP request object</dd>
<dd><code>response</code> - the current HTTP response object</dd>
<dd><code>chain</code> - The Filter chain passed down.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>javax.servlet.ServletException</code> - if <a href="../auth/AuthenticationManager.html#login(javax.servlet.http.HttpServletRequest)"><code>AuthenticationManager.login(HttpServletRequest)</code></a> fails for any reason</dd>
<dd><code>java.io.IOException</code> - If writing to the servlet response fails.</dd>
</dl>
</li>
</ul>
<a id="fireEvent(int,java.lang.String)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>fireEvent</h4>
<pre class="methodSignature">protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/wiki/ui/WikiJSPFilter.html#line.310">fireEvent</a>&#8203;(int&nbsp;type,
java.lang.String&nbsp;pagename)</pre>
<div class="block">Fires a WikiPageEvent of the provided type and page name
to all registered listeners of the current Engine.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>type</code> - the event type to be fired</dd>
<dd><code>pagename</code> - the wiki page name as a String</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../event/WikiPageEvent.html" title="class in org.apache.wiki.event"><code>WikiPageEvent</code></a></dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/WikiJSPFilter.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright (c) 2001-2023 The Apache Software Foundation. All rights reserved.</small></p>
</footer>
</body>
</html>