On Sun, 2002-02-03 at 11:34, James Strachan wrote: Cool. BTW I could maybe help with the Digester & XML stuff if you like.
That would be great. Should be in the few days that I get a site up to support it (with CVS etc). As you might imagine, I have a "real job" which obviously takes precedence. One other thing to keep in the back of your mind when you're refactoring things. Once its in CVS somewhere - hopefully the sandbox or failing that sourceforge - I'd be quite interested in adding support for 'real' beans. I think DynaBeans are perfect for queries and for when the Java object model is dictated by the database schema. Its also very common to need to write a web app for an existing database, where hand coding beans to represent the database is a wasted effort. Though it would be nice to support the other way around as well, that Java business objects are written first and Simper gets used to persist them and that the database schema comes secondary. The Simper code is mostly based on DynaBeans and its pretty easy to wrap a DynaBean around a real bean so I'm hoping that mostly Simper won't really know if real or dyna beans are being used. To get the 'mark as dirty' features in your SimperBean we could use BCEL or JDK1.3's dynamic proxy to generate wrappers that detect when bean setters are called. The nice thing about this would be we could use Simper to persist any Java Bean, as well as DynaBeans. There's an object-relational can of worms that this could open but hopefully we'll be able to keep it simple. That does sound interesting -- wrapping existing beans (POJO's) into Simper. Hopefully it can be done in a clever, yet simple way, rather than bloating it up into a big O/R tool. That's the mantra I hope is always maintained -- keep it simple yet clever. I've never worked with dynamic proxies, that sounds interesting. BTW I keep wanting to type Simpler rather than Simper. The project name didn't start out as a typeo did it ;-) The word Simper does bounce awkwardly around the brain doesn't it? But it's correct -- Simple Persistence - Simper. Bryan