From 3.0 to 3.1

By default JBehave Web dependes on JBehave Core 3.1. It still supports running with JBehave Core 3.0
except when excercising 3.1 functionality, such as meta filtering in the Run Story page.

From 2.x to 3.x

The 3.x Web Runner is a webapp build on Wicket, while the 2.x Web Runner
was built on Waffle.

Wicket and Waffle share a similar philosophy (embeddable, pure
Java, no XML aside from the webapp web.xml), but Wicket offers a
component-oriented approach (as opposed to a pure MVC one) that makes
Java-driven rich web functionality easier and is supported by a much
wider community base.

Just like in Waffle the application was configured by extending a
Registrar class, in Wicket users need to extend an Application class.
The Registrar and Application classes serve functionally the same scope
and migrating from one to the other is quite straightforward. The customising web runner page
details the configuration of the application.

The main different between the JBehaveRegistrar and the WebRunnerApplication
is that in the WebRunnerApplication instances of components need to be
returned, while in the JBehaveRegistrar we had void registering
methods that invoked parent registering methods.