Apache JSPWiki

Thursday May 31, 2018

Announcing Apache JSPWiki 2.10.4

We're pleased to announce the availability of Apache JSPWiki version 2.10.4. Following are the notable changes included in this release.

Improvements to the Haddock template

Haddock is JSPWiki's next generation template. Building on the huge number of new features shipped in 2.10.3, changes in 2.10.4 include a floating editing toolbar (JSPWIKI-1058). This is especially useful when editing long pages, as the toolbar is always visible without having to scroll to the top of the page:

JSPWiki floating editor toolbar

Work is also continuing to improve support for mobile devices (JSPWIKI-835), and a new favicon has been added.

Fixes for ACLs

  • JSPWIKI-1039 – ACLs are not taken into account when cache is disabled
  • JSPWIKI-1047 – Access Control Lists do not work if page cache is deactivated
  • JSPWIKI-1067 – View-only ACLs are not enforced

Other fixes

JSPWiki 2.10.4 corrects German language translation errors, and a rendering cache fix.

For more information

For a full list of changes see the ChangeLog file or our issue tracker.

The release is available for download at:

JSPWiki Maven artifacts are available under org.apache.jspwiki groupId, version 2.10.4

All JSPWiki site administrators are encouraged to update. To get involved, visit the project website at http://jspwiki.apache.org. For feedback, help, and developer queries please visit us on the mailing lists.

Thursday February 15, 2018

Announcing Apache JSPWiki 2.10.3

We're pleased to announce the availability of Apache JSPWiki version 2.10.3—the fourth major release made as an Apache Top-Level Project.

This is a hugely exciting release, packed with great features. Let's look at some of the highlights.

Updates to the Haddock template

Haddock is our next generation template. It's received an enormous number of changes in 2.10.3, including:

Mandatory properties have been removed

Important fixes

For developers

For more information

For a full list of changes see the ChangeLog file or our issue tracker.

All JSPWiki site administrators are encouraged to update. For feedback, help, and developer queries please visit us on the mailing lists.

Friday January 12, 2018

Open Excel spreadsheets in JSPWiki with SheetJS

Apache JSPWiki now supports reading and displaying Excel spreadsheets using more than one method. As well as the Worksheet plugin (blogged about here), you can use the SheetJS JavaScript extension.

After installing SheetJS, attached Excel files can be rendered directly within JSPWiki pages:

You can select specific sheets in attached spreadsheets to display, and a range of styles are available to add visual clarity. For more information, including installation and configuration steps, see:

Wednesday December 20, 2017

Apache JSPWiki's primary codebase now hosted on GitHub

Following on from moving Apache JSPWiki's codebase from SVN to Git earlier in 2017, we're pleased to further announce that GitHub is now the primary JSPWiki repository. The change was enacted after a vote on the JSPWiki user's mailing list (with the results summarised here).

Further information on how to work with the new repositories is available here, with general guidance on building JSPWiki from source here.

Code contributions are always welcome—we have a friendly developer community, and it's a great opportunity to get involved in an Apache top-level project.

Sunday September 17, 2017

Custom font support in JSPWiki

JSPWiki's Haddock template supports custom fonts for adding visual enhancement to wiki content. TrueType, OpenType, and Web Open Font formats are supported.

Two methods are available for using custom fonts. First, you can upload the desired font as a page attachment, then insert some custom CSS referencing the font with associated text styling:

Custom fonts in JSPWiki

Alternatively, if your wiki has internet access you can remotely load fonts from Google's font repository. For a live example of this, see here.

For more information on using fonts in JSPWiki, check out the Category.Font Style page on the documentation wiki.

Sunday August 20, 2017

Read Excel spreadsheets in JSPWiki

Displaying Microsoft Excel spreadsheet content in JSPWiki pages is supported by using the JSPWiki Worksheet plugin—developed by Christian Fröhler.

Installation is straightforward, consisting of adding a few extra Java libraries to your application server and the plugin itself. After a restart, insert some easy JSPWiki markup to display the contents of an attached Excel file directly in the wiki page:

JSPWiki Worksheet Plugin

The content can be visually customised with JSPWiki's wide range of styles.

For more information see the Worksheet Plugin page. Development contributions to enhance and improve the plugin are welcome!

Friday August 04, 2017

Apache JSPWiki's codebase moved to Git

We're pleased to announce that the JSPWiki codebase has been migrated from SVN to Git. Aside from making development easier for our core contributors—who prefer Git—we hope this change attracts and increases community developer involvement. If you're a coder looking to get involved in an Apache top-level project, featuring a great (and friendly) developer community, please pop by and say hi—or simply fork and get started!

Browseable source code is available at:

The Git clone URL is:

And we maintain a GitHub mirror at:

For more information on developing JSPWiki, please see:

Sunday July 23, 2017

A new website for Apache JSPWiki

We're pleased to announce a new look for Apache JSPWiki's main website at http://jspwiki.apache.org/. It's now running the latest release of the Haddock template for a clean, modern look and feel:

The new JSPWiki website homepage

Previously we had two sites for the JSPWiki project—a main site containing news and downloads, and a secondary site containing documentation. These have now been consolidated into the single site linked above.

If you notice any problems with the new site please let us know in the mailing lists or in a JIRA ticket. And if you're currently running a JSPWiki site with the legacy template, consider enabling Haddock for an all-round superior experience (see here for more information).

Saturday February 25, 2017

MathJax support in JSPWiki

MathJax is a JavaScript engine for displaying math in web browsers. With just a small script plus a minor modification to a couple of template configuration files, you can enjoy beautiful math formulae (using either TeX/LaTeX or AsciiMath notation) in your JSPWiki pages:

Math formulae displayed in a JSPWiki page

MathJax in JSPWiki is only supported when using the Haddock template. Documentation on enabling MathJax for JSPWiki is here, and information on how to use JSPWiki markup with MathJax is here.

Saturday August 27, 2016

Change JSPWiki's inactive session timeout value

By default, inactive JSPWiki sessions are logged out after 30 minutes. This value can be adjusted by adding the following entry to the JSPWiki's web.xml configuration file (where the session-timeout value is in minutes):


This sets inactive sessions to be logged out after one hour.

Alternatively, a session timeout value can be configured in your application server. For example, on Payara Server go to server-config > Web Container, and under the Session Properties tab set the Session Timeout value:

Configuring the session timeout value in Payara Server

Configuring the session timeout value in Payara Server

Tip: You can change the session timeout message displayed by JSPWiki when the timeout occurs by creating a wiki page named SessionExpired. It's also a good idea to add an [{ALLOW edit Admin}] ACL entry to this page.

Friday August 12, 2016

JSPWiki feature highlight: Easily embed videos and other media with Viewer

With the introduction of JSPWIki's new Haddock template comes a super-easy way to add videos and other media to your wiki pages. This is the new Viewer feature (one of the many available JSPWiki Styles).

Adding videos with Viewer is as simple as wrapping your video link with the %%viewer markup—a much easier method compared with previous video plugins. For example, the markup in the first screenshot below generates the video displayed in the second following screenshot:

Using the Viewer JSPWiki style

Using the Viewer JSPWiki style

The Viewer feature supports a wide range of online services from which video content is automatically recognised (check out the full list here).

Other neat tricks are possible with Viewer. For example, you can embed content from existing wiki links or external webpages in the same way:

Using the Viewer JSPWiki style

Using the Viewer JSPWiki style

For full details and more examples on how to use Viewer, see:

Monday August 08, 2016

Display JSPWiki page differences word-by-word

JSPWiki by default displays content differences between page versions line-by-line. This is often not fine-grained enough to easily identify specific changes—especially in longer pages with lots of content.

In JSPWiki this setting is known as the difference provider. You can configure alternative difference providers, one of which is the ContextualDiffProvider. The ContextualDiffProvider enables displaying of page version differences on a word-by-word basis.

Here's an example of page differences with the default TraditionalDiffProvider enabled:

Illustrating JSPWiki difference providers

Note that while only one word and one character has changed, the entire sentence is highlighted. For comparison here are the same changes with the ContextualDiffProvider enabled:

Illustrating JSPWiki difference providers

Clicking on the blue highlighted double arrows to the left or right of a change will jump to the previous or next change respectively:

Jumping between changes using the ContextualDiff provider

You can find more information on JSPWiki's difference providers here, and you can make the setting in your jspwiki-custom.properties file.

Tuesday August 02, 2016

JSPWiki feature highlight: Tab Completion

Continuing on from yesterday's blog post on Smart Typing Pairs, let's look at another time-saving feature in JSPWiki's Haddock plain editor: Tab Completion.

When Tab Completion is enabled, certain keywords typed into the editor will expand into JSPWiki markup when followed by a Tab keystroke.

Enable Tab Completion in the Haddock editor's settings menu:

Enabling JSPWiki Tab Completion

A good example demonstrating the use of Tab Completion is adding a table of contents. Without Tab Completion, adding a table of contents is achieved by manually entering the following markup:


To add a table of contents using Tab Completion, enter the keyword toc followed by a Tab keystroke. JSPWiki automatically expands the keyword into the full markup.

Other Tab Completion examples include the sign keyword (which inserts a user's signature and date), and the quote keyword (which creates fancy formatting for quoted content).

The full set of available keywords is listed here, and you can also add your own custom keywords.

Monday August 01, 2016

JSPWiki feature highlight: Smart Typing Pairs

A new feature in JSPWiki's Haddock editor is Smart Typing Pairs. When this setting is enabled, certain typed characters will automatically be balanced with their closing counterparts. Example characters include quotation marks, parentheses, and curly and square brackets. This saves time when entering content, as one does not have to manually close these characters: the Haddock editor will do it for you.

To try out Smart Typing Pairs, first enable it in the Haddock editor's settings menu:

JSPWiki smart typing pairs

The preference is remembered, so it's a one-time setting.

Now enter a square bracket or double quotation mark, and note that the editor will close the character for you:

JSPWiki smart typing pairs

When creating (for example) links with Smart Typing Pairs enabled, you only need to enter the opening square bracket ("[") and then paste the desired address: Haddock takes care of the rest.

You can also select existing content and enter the relevant opening character, which will automatically wrap the selection in the correct associated closing character. In the following example we want to add double quotation marks to the "Haddock Template" text:

JSPWiki smart typing pairs

First select the text:

JSPWiki smart typing pairs

And now enter Shift+" on the keyboard to enter a double quotation mark. Haddock automatically adds the associated closing character around the selection:

JSPWiki smart typing pairs

For more information please check out the Haddock Editor documentation.

Sunday May 15, 2016

Introducing the Haddock template

As mentioned in our inaugural blog post, JSPWiki has a new template named Haddock. It's been refined over the past several developer releases, and we feel it can now serve as the default, production-ready template for your JSPWiki installation. Let's take a look at some highlights.

A new user interface

Haddock features a clean, modern look and feel which builds upon the Bootstrap framework. While our legacy default template has served us well over the years, Haddock is a huge leap forward for JSPWiki's user interface.

JSPWiki's legacy template:

JSPWiki's legacy template

The Haddock template:

The JSPWiki Haddock template

The legacy template and associated skins are still available, but future user interface development will be focused on Haddock.

A new editing experience

Haddock ships with a brand-new plain editor, packed with new features. Smart typing pairs, automatic suggestions, and tab completion with snippets hugely accelerate the process of adding wiki content. Search and replace has been moved to a floating window, live content previewing is now available in a split-screen view, and the editor interface has been streamlined to display certain commands only when needed. And for folks who prefer a WYSIWYG experience, Haddock ships with a new WYSIWYG editor as well.

These are only some of Haddock's new editing features, and we'll be highlighting a selection in upcoming blog posts. For now, check out everything Haddock is capable of here:

Under-the-hood changes

Haddock's improvements don't just run skin-deep. Javascript and CSS files have been modularised for easier maintenance and reduced complexity (enabling for example straightfoward creation of custom dynamic styles). UglifyJS and wro4j are used to reduce application loading times. Net result? The speediest JSPWiki yet.

Trying Haddock out

Using Haddock is easy, and a great way to instantly supercharge your existing JSPWiki site. For any problems, support or feedback, let us know on our mailing lists.



Hot Blogs (today's hits)

Tag Cloud