Feb. Update
I need to post more often, sorry. I’ve been doing more Java development lately, actually mostly research because we may be rewriting some projects.
Binding
I’ve been looking into various Swing binding projects. There seem to be two big ones SwingLabs Bindings and JGoodies Binding. The SwingLabs project dropped off the list rather quickly because it is tied to the swingX components (which requires more setup in GUI builders) and it tries to do long-term persistence (we will use EJB3/Hibernate for that). Also there is no stable release at the current time (Feb 2006).
JGoodies Bindings however has had a few stable releases, a relatively small set of classes/intefaces to learn, and inspired by small-talk — These are all good things (at least to me). The major downside seems to be writing boilerplate code to glue the components to POJOs.
I don’t know, maybe the swingX components would allow us to write the code that glues the component’s data to the POJO with the GUI editor. Maybe we could automate the JGoodies code in some way. At this point, I haven’t used either tool.
WebStart EJB Clients
Have you ever written a WebStart EJB Client? No? After searching around the web, it appears not many people have. Using Web Services for our purposes is too slow and Web Services still has around 5MB overhead in client jars. Standalone EJB client jars weight in around 9-22MB depending on vendor. You also need upwards of 5 ports open. In the past, we took the hugh download size. Used VPNs when outside the local network to resolve the port problem. But now, we are looking for a better way.
That better way seems to be by avoiding the whole problem to begin with by using sevlets as front-end to your EJBs. Bright Side Remoting is an open source project I found yesterday. It seems to the answer to my problems. It has a small client jar and servlet and using the remote interfaces for your EJBs with dynamic proxies it uploads serialized data to the servlet and interacts with your EJBs. Again, this is a package I’m researching; I haven’t actually used it yet. There are a few wrinkles here, the demo doesn’t work. If click the “Home” link, you’ll see a message stating the company is no longer in business. The good news if the code is still available and under a BSD license.
Scott Delap wrote:
Adam,
JGoodies is probably the most solid Swing Binding solution. Do a quick search on ClientJava.com for data binding. DamnHandy.com has some examples of using AOP to create property change listeners automatically. As for EJB’s, I was on a project having the same issues. A remoting solution with a servlet facade to the EJB’s works very well. You need to proxy and swap out the EJB’s exceptions with something local however.
Posted on 27-Feb-06 at 8:48 pm | Permalink
Adam wrote:
Thanks for the comments and the pointers Scott. Nice to know we’re heading in the right direction.
Posted on 03-Mar-06 at 10:32 am | Permalink