• Fat Cats Boardgame
  • Wicket UI Library
  • About Me

Java and Wicket web development thoughts, tutorials, and tips

roman@coderdreams.com
Coder DreamsCoder Dreams
  • Fat Cats Boardgame
  • Wicket UI Library
  • About Me

Wicket-fields UI library v1.0 released!

August 28, 2019 Posted by Roman Sery wicket No Comments

I’ve release the first version of my Wicket UI library that makes creating simple Wicket UI’s event faster and simpler! I’ve been using a derivative of it in my professional projects for many years, and now that code has been refactored into a standalone library.

It’s based on Wicket 8 and Bootstrap 4 and comes with a complete sample Wicket app demonstrating usage. The first release includes various text, date, dropdowns, multi-select, numeric, radio, and checkbox fields. Future releases will include even more field types!

Why you want to use it

  • Simple, consistent syntax based on the Builder pattern is used to instantiate any type of field
  • No HTML required, just add a placeholder tag, and the HTML is created for you
  • All field are easily customizable using .properties files. Supports multiple locals/environments
  • Easily toggle fields from read-write to read-only
  • Optimized for Wicket page size by minimizing number of components create

Simple usage

// 1. In your WebApplication.init() method, initialize the WicketFieldsUI library
WicketFieldsUI.init(this);

// 2. Add the UiFieldsBehavior to your WebPage which will add all the necessary resources
add(new UiFieldsBehavior());

// 3. Add the placeholder tag for your field in your .html file
<span wicket:id="userFirstName"></span>

// 4. Add the field to your WebPage
add(new TxtField<String>(FieldArgs.Builder.of("userFirstName", "First Name", LambdaModel.of(user::getFirstName, formData::setFirstName)).build()));

// 5. When you are done adding your fields, send the InitPanelFieldsEvent event to notify them to init themselves
send(this, Broadcast.BREADTH, new InitPanelFieldsEvent(null));

GitHub repository

The repository contains much more documentation and a full working sample web app. Check it out here!

No Comments
Share
7

About Roman Sery

I've been a software developer for over 10 years and still loving Java!

You also might be interested in

Using MySQL JSON columns to simplify your data storage: Part 2

Dec 6, 2019

In part 2, we get into the nitty gritty details of how to implement the hybrid approach.

Customizing your Wicket codebase: Part 3 – Custom Text

May 16, 2020

Another powerful technique for customizing using property files.

How to replace PropertyModel with Wicket 8 LambdaModel

Aug 23, 2019

Learn how to replace the loved/hated PropertyModel with the much sexier LambdaModel.

Categories

  • aws
  • customization
  • database
  • debugging
  • enum
  • java
  • models
  • performance
  • projects
  • react
  • software design
  • Spring
  • tool
  • Uncategorized
  • wicket

Recent Posts

  • Rent Day
  • Self-contained Wicket Fragments
  • Pros and cons of unit testing
  • Themeable React Monopoly board
  • Please dont use client-specific release branches

Recent Comments

  • TCI Express Thanks for sharing such insightful information. TCI Express truly stands out as the best air logistics company, offering fast, secure, and efficient air express and cold chain transportation services....

    Tracking down a bug in production Wicket application ·  March 25, 2025

  • Tom Error: A zip file cannot include itself Can you please correct the plugin part so it doesn't use the same folder as input?

    Deploying Spring Boot app to AWS Beanstalk with Nginx customization ·  September 3, 2021

  • Golfman: Reality always wins I've used both Wicket and front-end JS frameworks and, having worked extensively on both, I can tell you that "Speed of development" is definitely NOT with the JS frameworks. You basically end up...

    Five reasons you should use Apache Wicket ·  August 29, 2021

  • Kiriller Sorry can not agree with you, wicket might be a well built technical framework. But the advantages of using a front-end framework like react.js and vue.js can not be beaten by Wicket nowadays. - Speed...

    Five reasons you should use Apache Wicket ·  August 23, 2021

  • Bernd Lauert Sorry but i have to refute your claims with the following arguments: 1. the Wicket community may be small but it is also very responsive, you usually get a helpful answer from the core devs on the...

    Five reasons you should use Apache Wicket ·  July 1, 2021

Archives

  • May 2021
  • October 2020
  • September 2020
  • August 2020
  • July 2020
  • June 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • September 2019
  • August 2019
  • July 2019

Contact Me

Send Message
Prev Next