The Swing Application Framework (JSR 296) is a Java specification for a simple application framework for Swing applications, with a graphical user interface (GUI) in computer software. It defines infrastructure common to most desktop applications, making Swing applications easier to create. It has now been withdrawn.
The JSR 296 specification defines the basic structure of a Swing application. It defines a framework as a small set of extensible classes that define infrastructure common to most desktop applications:
Development of an open-source Reference Implementation called "appframework" began in 2006. It was originally expected that this implementation would be the means for integrating JSR 296 into the upcoming Java SE 7 (Dolphin) version of Java, and the project was scheduled to be included in milestone 5 of the Java Development Kit JDK7 development. However, in August 2009, it was announced that the project would not be included, due to an inability to reconcile design flaws and achieve consensus among the JSR 296 team before the milestone 5 deadline.
The original Swing Application Framework implementation has been put on hold indefinitely. It was later withdrawn at the Spec Lead's request in June 2011. The last public release of the appframework project was version 1.03.
Several forks of the original implementation have been started by open-source communities, and several other application framework libraries have been created to achieve goals similar to those of JSR 296.
Last release BSAF 1.9.1 was 2012.