JSPWikiOh poor me, my owner has not set a channel description at all. Pity me.en-usOther stuff
/Wiki.jsp?page=Other%20stuff
spyhunter99 changed this page on Mon Mar 18 00:26:20 UTC 2024:<br /><hr /><br /><table class="diff" border="0" cellspacing="0" cellpadding="0">
<tr><td class="diff">At line 7 removed one line</td></tr>
<tr><td class="diffrem">* [ohloh|http://www.ohloh.net/p?ref=homepage&q=jspwiki]</td></tr>
</table>11/Diff.jsp?page=Other%20stuff&r1=-12024-03-18T00:26:20Zspyhunter99/PageInfo.jsp?page=Other%20stuffCopyrightNotice
/Wiki.jsp?page=CopyrightNotice
Juan Pablo changed this page on Tue Mar 12 21:33:09 UTC 2024:<br /><hr /><br /><table class="diff" border="0" cellspacing="0" cellpadding="0">
<tr><td class="diff">At line 11 changed one line</td></tr>
<tr><td class="diffrem">[Copyright|CopyrightNotice] &copy; 2023 The Apache Software Foundation, \\</td></tr>
<tr><td class="diffadd">[Copyright|CopyrightNotice] &copy; 2024 The Apache Software Foundation, \\</td></tr>
</table>13/Diff.jsp?page=CopyrightNotice&r1=-12024-03-12T21:33:09ZJuan Pablo/PageInfo.jsp?page=CopyrightNoticeDocumentation
/Wiki.jsp?page=Documentation
Juan Pablo changed this page on Tue Mar 12 14:41:33 UTC 2024:<br /><hr /><br /><table class="diff" border="0" cellspacing="0" cellpadding="0">
<tr><td class="diff">At line 77 removed 3 lines</td></tr>
<tr><td class="diffrem">!! Legacy JSPWiki</td></tr>
<tr><td class="diffrem"></td></tr>
<tr><td class="diffrem">The old (pre-ASF) JSPWiki documentation is still available on [Janne's site|http://www.ecyrd.com/JSPWiki/wiki/JSPWikiDocumentation]</td></tr>
</table>23/Diff.jsp?page=Documentation&r1=-12024-03-12T14:41:33ZJuan Pablo/PageInfo.jsp?page=DocumentationGetting Started
/Wiki.jsp?page=Getting%20Started
Juan Pablo changed this page on Tue Mar 12 14:40:22 UTC 2024:<br /><hr /><br /><table class="diff" border="0" cellspacing="0" cellpadding="0">
<tr><td class="diff">At line 18 changed one line</td></tr>
<tr><td class="diffrem">* JDK 1.8 or higher</td></tr>
<tr><td class="diffadd">* JDK 11 or higher</td></tr>
</table>38/Diff.jsp?page=Getting%20Started&r1=-12024-03-12T14:40:22ZJuan Pablo/PageInfo.jsp?page=Getting%20StartedNewIn2.12
/Wiki.jsp?page=NewIn2.12
Juan Pablo changed this page on Tue Feb 20 12:44:28 UTC 2024:<br /><hr /><br /><table class="diff" border="0" cellspacing="0" cellpadding="0">
<tr><td class="diff">At line 21 added 2 lines</td></tr>
<tr><td class="diffadd">* __Security Fixes__</td></tr>
<tr><td class="diffadd">** [CVE-2024-27136]</td></tr>
</table>7/Diff.jsp?page=NewIn2.12&r1=-12024-02-20T12:44:28ZJuan Pablo/PageInfo.jsp?page=NewIn2.12Main
/Wiki.jsp?page=Main
Dirk Frederickx changed this page on Sun Feb 04 12:06:30 UTC 2024:<br /><hr /><br /><table class="diff" border="0" cellspacing="0" cellpadding="0">
<tr><td class="diff">At line 22 changed one line</td></tr>
<tr><td class="diffrem">JSPWiki is open-source software that is released under the Apache Public License. This website ([https://jspwiki-wiki.apache.org]) serves as the platform for project collaboration. The JSPWiki community welcomes any help with the project. You don't need to be a software developer to get involved -- there are many other ways to contribute. See the [Getting Involved|Xxnxmmmmmmm] page for more details.</td></tr>
<tr><td class="diffadd">JSPWiki is open-source software that is released under the Apache Public License. This website ([https://jspwiki-wiki.apache.org]) serves as the platform for project collaboration. The JSPWiki community welcomes any help with the project. You don't need to be a software developer to get involved -- there are many other ways to contribute. See the [Getting Involved|Getting Involved] page for more details.</td></tr>
</table>59/Diff.jsp?page=Main&r1=-12024-02-04T12:06:30ZDirk Frederickx/PageInfo.jsp?page=MainLeftMenu
/Wiki.jsp?page=LeftMenu
Dirk Frederickx changed this page on Sun Feb 04 12:06:30 UTC 2024:<br /><hr /><br /><table class="diff" border="0" cellspacing="0" cellpadding="0">
<tr><td class="diff">At line 17 changed one line</td></tr>
<tr><td class="diffrem">* [Getting Involved|Xxnxmmmmmmm]</td></tr>
<tr><td class="diffadd">* [Getting Involved|Getting Involved]</td></tr>
</table>42/Diff.jsp?page=LeftMenu&r1=-12024-02-04T12:06:30ZDirk Frederickx/PageInfo.jsp?page=LeftMenuJSPWikiDocumentation
/Wiki.jsp?page=JSPWikiDocumentation
Dirk Frederickx changed this page on Sun Feb 04 12:06:30 UTC 2024:<br /><hr /><br /><table class="diff" border="0" cellspacing="0" cellpadding="0">
<tr><td class="diff">At line 8 changed one line</td></tr>
<tr><td class="diffrem">* [Getting Involved|Xxnxmmmmmmm]</td></tr>
<tr><td class="diffadd">* [Getting Involved|Getting Involved]</td></tr>
</table>16/Diff.jsp?page=JSPWikiDocumentation&r1=-12024-02-04T12:06:30ZDirk Frederickx/PageInfo.jsp?page=JSPWikiDocumentationContributedProviders
/Wiki.jsp?page=ContributedProviders
Dirk Frederickx changed this page on Sun Feb 04 12:06:30 UTC 2024:<br /><hr /><br /><table class="diff" border="0" cellspacing="0" cellpadding="0">
<tr><td class="diff">At line 8 changed one line</td></tr>
<tr><td class="diffrem">For other kinds of contributions, please check [Getting Involved|Xxnxmmmmmmm]. </td></tr>
<tr><td class="diffadd">For other kinds of contributions, please check [Getting Involved|Getting Involved]. </td></tr>
</table>6/Diff.jsp?page=ContributedProviders&r1=-12024-02-04T12:06:30ZDirk Frederickx/PageInfo.jsp?page=ContributedProvidersContributedPlugins
/Wiki.jsp?page=ContributedPlugins
Dirk Frederickx changed this page on Sun Feb 04 12:06:30 UTC 2024:<br /><hr /><br /><table class="diff" border="0" cellspacing="0" cellpadding="0">
<tr><td class="diff">At line 19 changed one line</td></tr>
<tr><td class="diffrem">For other kinds of contributions, please check [Getting Involved|Xxnxmmmmmmm].</td></tr>
<tr><td class="diffadd">For other kinds of contributions, please check [Getting Involved|Getting Involved].</td></tr>
</table>33/Diff.jsp?page=ContributedPlugins&r1=-12024-02-04T12:06:30ZDirk Frederickx/PageInfo.jsp?page=ContributedPluginsContributedFilters
/Wiki.jsp?page=ContributedFilters
Dirk Frederickx changed this page on Sun Feb 04 12:06:30 UTC 2024:<br /><hr /><br /><table class="diff" border="0" cellspacing="0" cellpadding="0">
<tr><td class="diff">At line 11 changed one line</td></tr>
<tr><td class="diffrem">For other kinds of contributions, please check [Getting Involved|Xxnxmmmmmmm].</td></tr>
<tr><td class="diffadd">For other kinds of contributions, please check [Getting Involved|Getting Involved].</td></tr>
</table>8/Diff.jsp?page=ContributedFilters&r1=-12024-02-04T12:06:30ZDirk Frederickx/PageInfo.jsp?page=ContributedFiltersGetting Involved
/Wiki.jsp?page=Getting%20Involved
Dirk Frederickx changed this page on Sun Feb 04 12:06:29 UTC 2024:<br /><hr /><br />29/Diff.jsp?page=Getting%20Involved&r1=-12024-02-04T12:06:29ZDirk Frederickx/PageInfo.jsp?page=Getting%20InvolvedHowToWriteACustomWikiEventListener
/Wiki.jsp?page=HowToWriteACustomWikiEventListener
Juan Pablo created this page on Sat Dec 02 19:46:50 UTC 2023:<br /><hr /><br /><p><div class="toc">
<div class="collapsebox">
<h4 id="section-TOC">How to write a custom wiki event listener</h4>
<ul>
<li class="toclevel-2"><a class="wikipage" href="#section-HowToWriteACustomWikiEventListener-Code">Code</a></li>
<li class="toclevel-3"><a class="wikipage" href="#section-HowToWriteACustomWikiEventListener-WhatKindsOfEventsAreAvailable">What kinds of events are available?</a></li>
<li class="toclevel-3"><a class="wikipage" href="#section-HowToWriteACustomWikiEventListener-UnitTesting">Unit testing</a></li>
<li class="toclevel-2"><a class="wikipage" href="#section-HowToWriteACustomWikiEventListener-Package">Package</a></li>
<li class="toclevel-2"><a class="wikipage" href="#section-HowToWriteACustomWikiEventListener-Deploy">Deploy</a></li>
</ul>
</div>
</div>
</p><p>See also:
</p>
<ul><li><a class="wikipage" href="/Wiki.jsp?page=JSPWikiPublicAPI">JSPWikiPublicAPI</a>
</li><li><a class="wikipage" href="/Wiki.jsp?page=DevelopmentEnvironment">DevelopmentEnvironment</a>
</li></ul><p>A custom wiki event listener is another JSPWiki extension point, in this case an specialization of a <tt>WikiEventListener</tt> that allows custom components be aware of all kind of events fired by JSPWiki. You may also be aware of these by registering a normal <tt>WikiEventListener</tt>, but custom wiki event listeners take care themselves of registering inside JSPWiki, which itself requires some deep knowledge of JSPWiki internals.
</p>
<h3 id="section-HowToWriteACustomWikiEventListener-Code"> Code<a class="hashlink" href="#section-HowToWriteACustomWikiEventListener-Code">#</a></h3>
<p>Custom Wiki Event Listeners are implemented as <tt><a class="external" href="https://www.baeldung.com/java-spi">SPI</a><img class="outlink" src="/images/out.png" alt="" /></tt>s.
</p>
<p>Coding a custom wiki event listener is pretty straightforward, just needs two things:
</p>
<ul><li>A <tt>CustomWikiEventListener</tt> class that implements the <b><tt>org.apache.wiki.api.events.CustomWikiEventListener< T ></tt></b> interface. Implementations of the following methods are expected to be provided:
<ul><li><tt>void initialize( Engine engine, Properties props ) throws WikiException</tt>: to locate and store, the object firing the events you are interested in, so the listener can be attached to it later on.
</li><li><tt>T client()</tt>: which returns the object located by the previous method, on which the <tt>CustomWikiEventListener</tt> will be registered.
</li><li><tt>void actionPerformed( WikiEvent event )</tt>: in which the action related to the event is done.
</li></ul></li><li>A <tt>META-INF/services/org.apache.wiki.api.events.CustomWikiEventListener</tt> file which contains the fully qualified class name of the <tt>CustomWikiEventListener</tt> implementation.
</li></ul><p>and that's it!
</p>
<h4 id="section-HowToWriteACustomWikiEventListener-WhatKindsOfEventsAreAvailable"> What kinds of events are available?<a class="hashlink" href="#section-HowToWriteACustomWikiEventListener-WhatKindsOfEventsAreAvailable">#</a></h4>
<p>There are lots of different types of events. The easiest way to see all them is by inspecting the <tt>org.apache.wiki.event.WikiEvent</tt> class and all of its subclasses. The <tt>actionPerformed</tt> method should take care of downcasting to the appropiate class, if needed, to the appropiate subtype(s) handled by the listener.
</p>
<p>Also, each and every of these classes contain a handful of constants that act as event identifiers related to each kind of event, available at <tt>WikiEvent#getType()</tt>, so you may use this to discern the concrete event for a given <tt>WikiEvent</tt>subtype.
</p>
<h4 id="section-HowToWriteACustomWikiEventListener-UnitTesting"> Unit testing<a class="hashlink" href="#section-HowToWriteACustomWikiEventListener-UnitTesting">#</a></h4>
<p>See <a class="wikipage" href="/Wiki.jsp?page=JSPWikiPublicAPI#section-JSPWikiPublicAPI-Testing">JSPWikiPublicAPI#Testing</a>
</p>
<h3 id="section-HowToWriteACustomWikiEventListener-Package"> Package <a class="hashlink" href="#section-HowToWriteACustomWikiEventListener-Package">#</a></h3>
<ul><li>Engine lifecycle extensions are usually bundled with another custom component. If it is needed to bundle the extension on a separate jar, see <a class="wikipage" href="/Wiki.jsp?page=StartingPointForCustomExtensions#section-StartingPointForCustomExtensions-Packaging">StartingPointForCustomExtensions#Packaging</a>
</li></ul><h3 id="section-HowToWriteACustomWikiEventListener-Deploy"> Deploy<a class="hashlink" href="#section-HowToWriteACustomWikiEventListener-Deploy">#</a></h3>
<p>As engine lifecycle extensions are coded as <tt><a class="external" href="https://www.baeldung.com/java-spi">SPI</a><img class="outlink" src="/images/out.png" alt="" /></tt>s, JSPWiki is automatically aware about the engine lifecycles extensions present, so there is no need of any further configuration.
</p>
<p><a class="wikipage" href="/Wiki.jsp?page=Category.Documentation">Category.Documentation</a>
</p>
<p>
</p>
<p>
</p>12023-12-02T19:46:50ZJuan Pablo/PageInfo.jsp?page=HowToWriteACustomWikiEventListenerJSPWikiPublicAPI
/Wiki.jsp?page=JSPWikiPublicAPI
Juan Pablo changed this page on Sat Dec 02 15:46:29 UTC 2023:<br /><hr /><br /><table class="diff" border="0" cellspacing="0" cellpadding="0">
<tr><td class="diff">At line 102 added 5 lines</td></tr>
<tr><td class="diffadd">!! Event Listeners</td></tr>
<tr><td class="diffadd"></td></tr>
<tr><td class="diffadd">Yet another {{[SPI|https://www.baeldung.com/java-spi]}} to allow easy registering of custom wiki event listeners, without having to care on how to properly register it. The interface to be implemented in this case is {{org.apache.wiki.api.events.CustomWikiEventListener}}, which is described in detail in the [How to write a custom wiki event listener|HowToWriteACustomWikiEventListener] page.</td></tr>
<tr><td class="diffadd"></td></tr>
<tr><td class="diffadd"></td></tr>
</table>22/Diff.jsp?page=JSPWikiPublicAPI&r1=-12023-12-02T15:46:29ZJuan Pablo/PageInfo.jsp?page=JSPWikiPublicAPI