Java Swing Frameworks and Libraries

Today I am looking around which library or framework could make my life easier while developing with Swing.

For Swing I need nice components, dialogs, wizards, background threads, etc.

In additation to this I will need ‘easy’ logging, ‘easy’ translation, beans binding and so on. The final requirements are not fixed at the moment so I will take just a survey 😉

So whats the difference between an ordenary ‘libray’ and the hip ‘framework’?

I think the main difference between a framework and a library is, that you have to call the libraries methods directly from code. Swing itself is a framework, so it calls your methods; e.g. your ActionListener’s listen to an action from Swing and will be called from Swing. That means a framework uses the hollywood principle or sometimes called dependency injection.

Let me start with the ‘EierlegendeWollmilchsäue’ (the more bigger frameworks):

  • Spring richclient (Apache License 2.0). Actions, bars and more via spring beans, data binding and validation, view management, dialogs, wizards, progress bars, simple I18N etc. Start with the documentation there or here.
  • OpenSwing Framework: a lot of components, beans binding, ORM classes, spring integration, authorization management, logging, translation. See here for more information.
  • The dev.java.net bundle; namely: Swing Application Framework and Beans Binding (LGPL). The AppFramework is currently not active, but nevertheless it offers some nice features.
  • Genuine (LGPL) is a client framework for Java Swing applications for which it provides basic infrastructure.

There are some smaller, but very nice libraries and frameworks:

Do you know other free libraries or frameworks, which could be useful for Swing development?