Dave Newton wrote: > in some ways I like being coupled to static methods even less because it's > not injectable.
Not true. FacesContext is injectable with if you use Seam, Spring IoC, or Guice. Perhaps the native IoC container in JSF will provide this injectability natively in JSF 2.0. Jeromy Evans - Blue Sky Minds wrote: > Agreed. Using a static method call is NOT a form of decoupling from the > framework. In fact, it's less desirable than an interface because its > harder to > test and override. They are degrees of coupling. JSF's sue of a static method call results in much less framework coupling than, say, inheriting a base class as Struts2 would have you do. This is because the static method call can be mocked quite easily whereas Struts2 base classes (and whatever they depend on) not nearly as easily. I agree that the ultimate decoupling is simple interfaces, and this is precisely what JSF and Spring-MVC use. Both also use static method calls to obtain framework services. Struts2 does not. Instead, Struts2 forces you to either use its base classes or, if you choose to use its interfaces, rewrite a lot of plumbing that you shouldn't have to rewrite. As has been pointed out in other threads, suffers from the Fragile Base Class anti-pattern (http://en.wikipedia.org/wiki/Fragile_base_class). I don't think anyone would claim JSF and Spring-MVC suffer from this problem, and although they do have problems of their own, they're not necessarily fundamental design issues like with Struts2. -- View this message in context: http://www.nabble.com/Actions-without-extending-ActionSupport--tp15591064p15762345.html Sent from the Struts - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]