You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 15 Next »

Environment

Wicket 8.0 requires at least Java 8

Wicket 8.0 requires Servlet 3.1

API changes

Deprecate org.apache.wicket.util.IProvider WICKET-6060

Replace it with standard Java 8 java.util.function.Supplier<T> which is virtually identical.

IGenericComponent's setter methods now return the current instance for method chaining

All specialization classes return their type.

AjaxFallback** components now use java.util.Optional  WICKET-6104

All AjaxFallback** components and the containers which use internally AjaxFallback** components, like AjaxTabbedPanel, RatingPanel and TableTree, have been reworked to pass Optional<AjaxRequestTarget> instead of just AjaxRequestTarget to their onXyz() callback methods. This way the application developer should not forget to check that the AjaxRequestTarget is not null. 

Behavior changes

FormComponentPanel delegates the call to #clearInput to its FormComponent children WICKET-6114

FormComponent#clearInput() has been made non-final, so that now containers like FormComponentPanel could override this method and call #clearInput() on its children of type FormComponent.

Removals

Drop Jetty 7.x and 9.0.x modules for Wicket Native WebSocket WICKET-5990

Since Wicket 8.x requires Servlet 3.1 the modules for native websocket support for Jetty 7.x/9.0.x have been dropped.

Users are advised to use wicket-native-websocket-javax module with Jetty 9.2+, Apache Tomcat 7/8, JBoss WildFly.

Improvements

IModel uses Java 8 default interface method for IDetachable#detach() WICKET-6115

For convenience IModel class provides a do-nothing implementation of IDetachable#detach() method, so custom implementations are not required to implement it when not needed.

Dependency updates

All libraries on which Wicket modules depend are updated to their latest stable versions.
The most notable ones are:

  • Spring Framework 4.2.x
  • Jetty 9.3.x (used in the Quickstart application archetype and for internal Wicket testing)
  • No labels