Thanks for that reply Alex! Some remarks below. > We can only compare the presentation stack of WO vs Wicket. Having worked with > both frameworks, here are some thoughts : > > - Java code is MUCH cleaner with WO, you keep in code only data pushed in the > presentation layer and actions. No need to add components and configure them > in > java code.
Only if you consider less the same as cleaner. If you are doing a lot of inter-component interactions, this would actually be a disadvantage. What I (and collegues) do a lot is use a component (e.g. a panel) and a bunch of nested classes in that panel (Panels, fragments, other) that uses state and methods of the outer component. For situations where the UI is complex, it saves a lot of effort to work like this, and imo you end up with very nice encapsulated components with minimal plumbing. Imo, being able to work like this is one of the biggest pro's compared to declaratively composing your component tree. > - Components are declared in HTML, configured in another file, binding > (configuring) the component with the java class. This approach need tools, WO > has some nice tools for this. That's why Tapestry is not even close to WO > here. > > - Wicket is statefull. So is WO by default, you can also use it in a stateless > way, loosing the convenience of component action but keep the need of a > session > to the last moment. That's a very good point for WO, which can be used to > build > public stateless websites. 1.2.x has a limited availability of stateless pages: pages are stateless when there are no callbacks to itself (like links or forms). If you would do everything using bookmarkable pages, your app would be stateless (though for 1.2.x, an http session object would still be created). In 2.0 we are working at dramatically increase the options you have for working in a stateless fashion. We have deferred session creation (http session is now only created when really needed/ first time a stateful page is served or session state is explicitly saves) and more options to use stateless pages, like StatelessLink and StatelessForm. This is implemented now (please play with it) and should already cover enough to create serious stateless applications. I think this feature is very useful for situations where you have an anonymous, public facing part of a site which should be stateless and other parts where the UI gets so complex you really need the stateful model. > - Wicket has nice URLs (if we want to). WO not really. (keeping an ugly > cgi-bin/WebObjects in URLs) > > - WO is not multithread by default. (When deployed, you can deploy multiple > instances of the same app) I don't really understand what you mean by this. Is WO based on servlets btw? > - WO's validation is done at the data layer and not really good. Wicket's is > rather good. > > - WO is very mature (first version in 1996, yes the first component framework > and ORM tool...), has good documentation and is a little...dead (only > maintenance versions) Pretty amazing. I wasn't even programming in Java at that time. Too bad they didn't open source it before Struts arrived. > - Wicket is young, active but lacks of solid documentation for the moment. Well, there is http://www.apress.com/book/bookDisplay.html?bID=10189 now! :) > - Both frameworks (i'm not talking about EOF here) are rather easy to learn. > > - Often, you have to do it the WO way... or not doing it. > > - In WO, you don't need to create custom components if you don't need them > elsewhere. In Wicket if you want keep a simple and maintenable code for a > rather > complex page, you should create Panels, other components... wich are not > needed > in other pages. Can you expand on where/ why you think that difference comes from? Are some of the default components of WO better abstracted for the kind of things you do? > - Both frameworks make creation of custom components easy (unlike JSF!!!) > > - Wicket custom components can be shared with a simple jar, WO components are > bundled in "Frameworks" (custom packages). > > - Both frameworks are not using XML for configuration... Eelco ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Wicket-user mailing list Wicket-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wicket-user