Apache JSPWiki

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 (click to enlarge):


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

Presenting the content of Microsoft Excel spreadsheets in JSPWiki is possible by using the 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, add some simple JSPWiki markup to display the content of an attached Excel document (click to enlarge):


Even better, the content can be styled with JSPWiki's wide range of styles.

For more information please 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

New website for jspwiki.apache.org

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 (click to enlarge):


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 (click to enlarge):


MathJax in JSPWiki is only supported when using the Haddock template (so it's yet another great reason to switch). 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 – quite often too short. The value can be adjusted by adding the following entry to the web.xml 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 the application server. For example, on Payara Server, go to "server-config → Web Container", and under the "Session Properties" tab set the session timeout value in seconds (click to enlarge):



Tip: You can change the "Session Timeout" message shown by JSPWiki when the timeout occurs – just create the SessionExpired page. It's probably a good idea to also add an [{ALLOW edit Admin}] ACL entry to the 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 JSPWikiStyles.

Adding videos with Viewer is as simple as wrapping your video link with the %%viewer markup – a much easier method compared to previous video plugins. For example, the following markup (click to enlarge):


will generate the following result: (click to enlarge):


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

Other neat tricks are possible with Viewer. For example, you can embed content from an existing wiki link or an external webpage in the same way (click to enlarge):



For full details on how to use the Viewer style with more examples, please see https://jspwiki-wiki.apache.org/Wiki.jsp?page=Viewer#section-Viewer-Usage.

Monday August 08, 2016

Display JSPWiki page differences word-by-word

By default, JSPWiki displays differences between page versions line-by-line. While serviceable for general use, this is often not fine-grained enough to easily identify specific changes – especially in 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 (click to enlarge):


Note that while only one word and one character has changed, the entire sentence is highlighted. By comparison here are the same changes with the ContextualDiffProvider enabled instead (click to enlarge):


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


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 take a look at another time-saving feature in JSPWiki's new plain editor: Tab Completion.

With Tab Completion enabled, certain keywords typed into the editor will expand to a full text snippet when followed by a Tab keystroke.

Tab Completion can be enabled from the Haddock editor's settings menu (click to enlarge):


A good example is adding a Table of Contents. Typically this is achieved by manually entering the following markup:


To instead add a Table of Contents using Tab Completion, simply enter the keyword toc followed by a Tab keystroke. JSPWiki will automatically expand the keyword to the full text snippet.

Some other useful examples include the sign keyword which expands to a user's signature and date, and the quote keyword which will create fancy formatting for quoted content.

There's a range of additional keywords available, which you can view here (and for the more adventurous users the snippets can also be customised).

Monday August 01, 2016

JSPWiki feature highlight: Smart Typing Pairs

A great new feature in JSPWiki's Haddock editor is Smart Typing Pairs. When enabled, certain characters when typed 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.

You can enable Smart Typing Pairs in the Haddock editor's settings menu (click to enlarge):


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

Now enter a square bracket or double quotation mark, and you'll see the editor will close the character for you (click to enlarge):


When creating (for example) links with Smart Typing Pairs enabled, one only has to enter the opening square bracket ("[") and then paste the desired address – Haddock will take 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 wish to add double quotation marks to the Haddock Template text (click to enlarge):


First select the text (click to enlarge):


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


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 – which we call 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 key highlights.

A new user interface

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

JSPWiki's legacy template (click to enlarge):


The Haddock template (click to enlarge):


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 also available in a split-screen view, and the editor interface has been streamlined to display certain commands only when actually 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 it's capable of here:

Under-the-hood changes

Haddock's improvements don't just run skin-deep. Javascript and CSS files have been modularised for improved maintainability and reduced complexity (making it much easier to create custom dynamic styles, for example). UglifyJS and wro4j are used to reduce application loading times. Net result? The speediest JSPWiki yet.

Trying Haddock out

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

Monday May 09, 2016

A new blog home for Apache JSPWiki

As part of our recent new release, we’re pleased to announce JSPWiki has a brand new blog home – right here on https://blogs.apache.org/jspwiki. Over the coming weeks we’ll be sharing news, tips, and feature highlights – so be sure to check back regularly. The RSS feed for your favourite news reader is here (and for folks who prefer social networks, we have a revived presence on Facebook and Twitter).

For our new JSPWiki 2.10.2 release: be sure to check out the list of terrific new features here. As well as code rewrites for core components, support for running in dockerized containers, and fixes for popular supporting application servers, the new Haddock template has been enabled by default. Previously only available as a manually-configured option, Haddock has now matured sufficiently to serve as our production-ready, next-generation template. There’s a huge number of improvements in Haddock compared to JSPWiki’s legacy templates and skins, and we’ll be covering some highlights in future blog posts. If your site is running an older JSPWiki version, consider giving it a substantial visual and feature boost simply by updating to v2.10.2.

We have one of the most friendly and helpful user and developer communities around – folks as always are welcome and encouraged to participate via the mailing lists.



Hot Blogs (today's hits)

Tag Cloud