Skip to content
CMO & CTO
CMO & CTO

Closing the Bridge Between Marketing and Technology, By Luis Fernandez

  • Digital Experience
    • Experience Strategy
    • Experience-Driven Commerce
    • Multi-Channel Experience
    • Personalization & Targeting
    • SEO & Performance
    • User Journey & Behavior
  • Marketing Technologies
    • Analytics & Measurement
    • Content Management Systems
    • Customer Data Platforms
    • Digital Asset Management
    • Marketing Automation
    • MarTech Stack & Strategy
    • Technology Buying & ROI
  • Software Engineering
    • Software Engineering
    • Software Architecture
    • General Software
    • Development Practices
    • Productivity & Workflow
    • Code
    • Engineering Management
    • Business of Software
    • Code
    • Digital Transformation
    • Systems Thinking
    • Technical Implementation
  • About
CMO & CTO

Closing the Bridge Between Marketing and Technology, By Luis Fernandez

JSPWiki in Practice: Small but Capable

Posted on January 16, 2008 By Luis Fernandez

Small tools rarely make a splash. They just show up, do the work, and keep quiet.

JSPWiki in Practice sits right in that space. It is a Java wiki that feels modest at first glance, yet it carries more than enough muscle for a team that wants a shared brain without a three month rollout. If you have Tomcat somewhere in the server closet and a team that likes to write, you already have what you need. I have been running it with a small group of developers and marketers, and the mix of simplicity and power has been the sweet spot. This is the kind of tool that makes meetings shorter and pages longer. In a good way.

How we ended up with this Java wiki

We were bouncing between shared network folders and email threads that grew like vines. Someone said wiki and everyone nodded. We tried the big names. MediaWiki is strong for encyclopedias but the editing flow felt a bit cold for project notes. TWiki is flexible but it asked us to think in a way that was not ours. Confluence looks polished and the feature list is long, yet we wanted something we could drop in today using what we already have. Then came JSPWiki. It is a standard web app, a war file you put in Tomcat, and it starts. No mystery. The first pages went up the same afternoon.

Right now Java 6 runs fine on our boxes. Tomcat 5 and Tomcat 6 are everywhere. That is the world this wiki lives in. It runs with very light memory needs, it keeps page versions, it speaks RSS, and the markup is plain enough that non developers stop asking for a WYSIWYG button after a day. We wired it to our internal groups through container login and moved on with our lives. That is the story. No fireworks. Just a working wiki.

What actually changed in our day to day

Before this, meeting notes faded in mail archives. Now we have a page for each project, a home page for the team, and a backlog that stays visible. The diff view is the hero feature. People write because they know we can see what changed. The search is quick. There is a Recent Changes list that keeps the pulse of the team. Attachments live with the page so no one hunts for a version number at the end of a file name. The wiki is not cute. It is direct. And that turns readers into contributors.

We also found that small habits form fast. We keep a page named Today with notes, blockers, and links to work in progress. The next day that page moves to an archive and a fresh Today is born. The Include feature lets us stitch pages together so the team home page shows the latest from Today, the next release, and the open questions. No one asked for training. They just started editing.

Deep dive one: setup that respects your time

Server basics. Drop the JSPWiki war in your servlet container. We are on Tomcat with the usual JRE 5 and JRE 6 mix. It runs fine with modest memory and no special tuning. On first start it creates its working directories and a default page set. If you prefer Jetty or another container, that works too. It is a plain Java web app, so anything that speaks servlet spec is fine.

Where the content lives. By default pages are stored on the file system. It ships with a versioning provider, so you get a full change history out of the box. That choice is friendly for backups because your wiki is just files and attachments on disk. Tape or rsync or whatever you already use will cover it. If you want to move the page repository, point the property for page files to a directory of your choice and restart. We keep ours under a dedicated volume with daily snapshots. It has been boring in the best way.

Character encoding and markup. Set it to UTF 8 and forget about it. Mixed content with accents has been fine in our pages. The markup is lightweight. Headings, bold, italics, lists, tables, and links are all readable in raw form which is useful when someone pastes text into an email or a ticket. There is a clean edit preview that helps new users gain confidence. The editor is plain textarea which might sound old school, yet it means no browser surprises. That makes support easy when half the team is on Firefox and the other half is stuck on the company browser.

Tip: enable the built in RSS feed for Recent Changes and ask the team to subscribe. It creates awareness without nagging.

Deep dive two: users, groups, and page permissions

Authentication. JSPWiki plays nice with container managed security. If Tomcat already knows your users through a realm, the wiki can accept that. We tied it to our directory through the container and let the server do the hard work. You can also keep users in the wiki itself with a simple user database when the team is small. The login form is clean and you can add your logo to the template if you care about looks.

Authorization. The wiki has a clear model for permissions. There are roles like Anonymous and Authenticated and Admin, and you can create wiki groups that gather people by project. Page permissions can be set at a global level with a policy file, and you can add fine control on a page with a small access rule at the top. That lets you say who can view, edit, or comment on that specific page. For teams that need a private corner for a client or a release, this is perfect. It keeps the rest of the wiki open which is how culture grows.

A word on single sign on. If your intranet already does single sign on through the app server, the wiki will ride along. In a Windows domain world you can place a front end that negotiates with the browser and passes a trusted header to Tomcat. In a simple LDAP world just keep the container realm clean and it works. This is not wizardry. It is just the container doing its job.

Practical guardrail: set edit rights to Authenticated as the default and open up view to everyone inside. That keeps spam out and keeps reading easy.

Deep dive three: structure, plugins, and search that pulls its weight

Page structure. Keep a top level home, then one space per team, and under each team a page per project. The wiki supports includes so you can embed the status of a project page in the team home. Templates let you start new project pages with the same sections every time. That helps consistency without turning the wiki into a rigid form. Attachments live on the page itself which keeps docs and notes together. When someone drags a spreadsheet into a page and writes two lines about it, we all know where the truth lives.

Plugins and macros. There is a small but useful set of built in plugins. You can show recent changes, create an index of child pages, include a page, list attachments, or embed a query on page metadata. If you want to write your own, it is just Java with a simple interface and access to the wiki context. That means internal tools can live beside text. We wrote a tiny plugin that reads a JSON file from our build server and shows the last green build on the release page. It took an afternoon and saved a dozen pings per day.

Search. The built in search is quick and it indexes both text and attachments where it can. Under the hood it uses a mature search library from the Apache world, so you get sensible results and fast updates. We noticed that people search more when results are instant. That is where the wiki pays for itself. When knowledge is one search away, the team writes more and repeats itself less.

Migration path: if you are coming from flat docs, drop them as attachments and create summary pages. If you are leaving later for a bigger platform, you still have your content as files and a clear markup. Nothing is trapped.

Where it fits and where it does not

JSPWiki shines when you want a lightweight Java wiki that respects your stack. It fits small and mid teams that need versioned pages, clear diffs, attachment support, and sane permissions. It feels natural if you already run Tomcat or Jetty. It is friendly to backups and audits because content is plain files with a clear history. The template system keeps pages tidy without turning your team into form fillers. And the plugin layer is simple enough that you can place a tiny bit of logic where it helps.

If you want deep office integration, a heavy workflow, or fancy dashboards out of the box, look at Confluence or a portal stack. If you are building a public encyclopedia, MediaWiki is still the default. If you want a wiki that behaves like a full app platform with macros everywhere, TWiki may be your style. JSPWiki is not trying to win a feature race. It wants to be the writer in the corner who always hits send on time.

A few habits that made it stick

Name pages like you speak. Do not worry about long titles. The search will handle it and people will remember the name. Use one page for each project and link them from a shared index. Simplicity beats clever tricks.

Write the week. Keep a Today page and then archive weekly. It creates a rhythm. The archive becomes your changelog for the team. When someone asks what happened last month, you have an answer in two clicks.

Protect lightly. Keep most pages open to everyone inside the team and protect only a few. Hidden corners tend to rot. Open corners get sunlight and edits.

Closing thoughts

In a year where every week brings a new hosted tool, it is easy to forget that a small Java web app can still carry a team. JSPWiki is small but capable. It respects your server room, it respects your time, and it respects the way people actually write. If your team has been stuck in attachment land, give it an afternoon. By the end of the day you will have a living place for knowledge, not another shared folder with good intentions. Tools do not have to be loud to be useful. They just have to be there, ready when you are.

Search terms to get you started: JSPWiki, Java wiki, Tomcat wiki, lightweight wiki for teams, wiki permissions, container login, RSS for Recent Changes, Java web app wiki, Lucene search in wiki, team knowledge base on Java.

Content Management Systems Marketing Technologies Software Architecture Software Engineering

Post navigation

Previous post
Next post
  • Digital Experience (94)
    • Experience Strategy (19)
    • Experience-Driven Commerce (5)
    • Multi-Channel Experience (9)
    • Personalization & Targeting (21)
    • SEO & Performance (10)
  • Marketing Technologies (92)
    • Analytics & Measurement (14)
    • Content Management Systems (45)
    • Customer Data Platforms (4)
    • Digital Asset Management (8)
    • Marketing Automation (6)
    • MarTech Stack & Strategy (10)
    • Technology Buying & ROI (3)
  • Software Engineering (310)
    • Business of Software (20)
    • Code (30)
    • Development Practices (52)
    • Digital Transformation (21)
    • Engineering Management (25)
    • General Software (82)
    • Productivity & Workflow (30)
    • Software Architecture (85)
    • Technical Implementation (23)
  • 2025 (12)
  • 2024 (8)
  • 2023 (18)
  • 2022 (13)
  • 2021 (3)
  • 2020 (8)
  • 2019 (8)
  • 2018 (23)
  • 2017 (17)
  • 2016 (40)
  • 2015 (37)
  • 2014 (25)
  • 2013 (28)
  • 2012 (24)
  • 2011 (30)
  • 2010 (42)
  • 2009 (25)
  • 2008 (13)
  • 2007 (33)
  • 2006 (26)

Ab Testing Adobe Adobe Analytics Adobe Target AEM agile-methodologies Analytics architecture-patterns CDP CMS coding-practices content-marketing Content Supply Chain Conversion Optimization Core Web Vitals customer-education Customer Data Platform Customer Experience Customer Journey DAM Data Layer Data Unification documentation DXP Individualization java Martech metrics mobile-development Mobile First Multichannel Omnichannel Personalization product-strategy project-management Responsive Design Search Engine Optimization Segmentation seo spring Targeting Tracking user-experience User Journey web-development

©2025 CMO & CTO | WordPress Theme by SuperbThemes