- A rich GUI built on top of Swing with support for CRUD operations. The GUI is constructed dynamically at runtime from the introspected model.
- Persistence (by leveraging Hibernate)
- Authentication - the ability to login and to manage users.
- Built-in support for query construction, invocation and query persistence in GUI
- Support for the construction of wizards, calendaring (calendaring components), and more.
InfoQ spoke to Eitan Suez to find out more. According to Eitan "The essence of JMatter is the generic implementation of aspects of business software applications" (the ones listed above)...Developers employing the JMatter framework do not write a single line of GUI code. Application development consists of modeling the domain in question. Then one simply types "ant schema-export" followed by "ant run" and you're basically done. So JMatter considers the GUI, the persistence, the query construction as plumbing, plumbing that it offers out of the box. Today, projects dedicate perhaps 80% of their development budgets to the construction of such plumbing, on a per-project basis. JMatter's vision then is to free developers to concentrate on their customers' business domain."
Naked Objects focus on the domain model sounds a lot like Eric Evan's vision of Domain Driven Design. On the similarities, Eitan said "Both advocate the same approach: that to solve a customer's business problem, one must work closely and in collaboration with domain experts, to develop a model of the domain in question. It is a process of exploration and it focuses on the domain. Frameworks that follow the NakedObjects architectural pattern aim to provide the means necessary for developers turn that object model, complete with behaviours, into a running application."
On why jMatter was open sourced, Eitan said that one of his "aims is to build a community around this framework, strong enough to extend and evolve JMatter to support other architectures and different front-ends. I am considering the construction of viewing mechanism targeting the web, based on GWT or a similar technology (such as Echo or wingS)." jMatter is currently licensed under either the GPL or its own commercial license. Eitan hopes to take jMatter n-tier within a year if the community is interested in it.