A potpourri of Java client application technologies was on the agenda at the Desktop Matters conference in California last Friday, where the desktop got top billing over the Web.
Again dominating the discussion, as was the case on Thursday, are technologies pertaining to the Swing desktop client platform for Java. Presentations are featured on such projects as the Spring Rich Client Project, jMatter, and SwiXml.
The desktop can be a better option than the Web in some circumstances, one attendee said. "For certain types of applications, desktop's the only way to go," said Rob Abbe, chief software architect at Captovation, which develops document capture software. He cited applications that need to interface with peripherals like high-speed scanners as an example.
"The Web would be better [as a deployment choice] when the footprint needs to remain low [like] in situations where administrative policies would prevent people from installing desktop applications," Abbe said.
One technology featured, the open-source Spring Rich Client Project , shares code with the popular Spring application framework for Java but is geared to rich client applications.
"There are hundreds of major companies using this for very large and significant production applications," said Jim Moore, a consultant at Interface21, which oversees Spring technologies.
The mission of the project is to provide an elegant way to build rich client applications that leverage the Spring framework, he said. The initial focus is support for Swing applications, according to the project's Web site.
Another open-source project, jMatter , is built for developing applications for small businesses. It leverages Naked Objects Architectural Pattern , which presents new ideas on how to build applications, said Eitan Suez, author of jMatter and president of Uptodata.
"I'm on a mission to get these ideas out," Suez said. "JMatter is a manifestation of these ideas and it's a framework that I think empowers the developers to focus on their customers' needs without having to worry or spend [an] inordinate amount of time on plumbing or framework or spending time building or maintaining the GUI."
Swing and the Hibernate object-relational persistence software are featured in jMatter.
SwiXml is a GUI generating engine for Swing applications. GUIs are described in XML documents that are parsed at runtime and then rendered into javax.swing objects, according to the SwiXml Web site. SwiXml is used mostly for desktop applications.
With SwixML, code is separated from the layout like with HTML, making for easier maintenance, said Wolf Paulus, developer of SwixML and a software architect at Cardiff.