Induction v1.3.0b released - the most powerful Java MVC framework raises the bar

9 views
Skip to first unread message

Adi

unread,
Nov 2, 2009, 6:17:48 AM11/2/09
to Induction Framework
The most powerful MVC framework for Java has raised the bar. Induction
v1.3.0b introduces powerful new request interceptor support and
further expands the capabilities of the unrivaled power of its short
URL resolvers. New features in this release:

* Powerful new support for request interceptors. Request
interceptors are backed by the same zero-configuration type-based
dependency injection support currently available in Induction
controllers.

* The ShortURL resolvers are enhanced to support a new <class-
replace> directive in the <url-to-class-map> section of the Induction
configuration. This directive allows a character in a URL that is not
legal in a Java class name to be replaced with a character that is
legal in a Java class. For example, this directive can be used to map
a hypen in URL to, say, an underscore in a controller or views class
name. Induction is the only MVC framework to date that supports
mapping a hyphenated URL to a controller/view even when the mappings
are established automatically via dynamic controller/view discovery.

* Fixes 2 minor bugs in v1.2.0b (details of bug fixes on the
downloads page).

Enjoy!
Adi

TiKi

unread,
Nov 5, 2009, 10:01:56 AM11/5/09
to Induction Framework
Hi Adi,

I see the value in the Framework. However there is lot of ground
to cover to call it most powerful MVC Framework. Have you questioned
your self How is Induction dealing with internationalization,
addressing view groups to share internationalization?, locale sharing,
support for annotations (Spring MVC 3 has a advantage here, I would
not even look at the framework that does not have support fro
annotations). Spring MVC support variety of Views how is Induction
compare to that? Spring MVC support REST can induction support
multiple mime type in built? How does the framework support form bean
binding?

I am not trying to be rude but you guys has lot of ground to cover
to compare it to Spring MVC or another MVC. One of the areas that you
guys have advantage over Spring MVC is in the area of model binding to
handler. But that is still not good because area of design by contract
is not addressed!!. If you want i can study your solution inside out
and help you guys point out the flaws.

Regards,
Pratik Parikh

Adinath

unread,
Nov 6, 2009, 3:26:24 AM11/6/09
to induction...@googlegroups.com
Hi Pratik,

I appreciate you taking the time to convey you viewpoint. My comments/responses to the points you raised follow:

  I see the value in the Framework. However there is lot of ground
to cover to call it most powerful MVC Framework.

I do agree that it is strong claim...but I think this is justified. Consider that if you compared Induction 1.x with Spring MVC 1.x there is simply no comparison! You have to go to Spring MVC 2.5 or 3.0 to make a meaningful comparison with Induction 1.3.0
 
Have you questioned your self How is Induction dealing with internationalization, addressing view groups to share internationalization?, locale sharing

Currently Induction leaves internationalization to the application. You are free to use the internationalization approach of your choice including that provided by the templating engine you use, for example Freemarker has neat internationalization support.
 
support for annotations (Spring MVC 3 has a advantage here, I would not even look at the framework that does not have support fro annotations).

Annotations are a means to an end, not end in itself. So I do not think it is meaningful to talk of "support" for annotations. Induction does not use annotations at this time since it advanced design simply eliminates the need for a lot of the configuration that are done with annotations in other frameworks.

For example, in certain frameworks, the use of annotations to specify the URL path mapping to a controller is a blatant violation of good design principles, it is configuration being embedded in the code!! The use of annotations to implement a poor design does not make the design any better or more appealing. If in the future a good use is envisioned for annotations in Induction, Induction will use it. Currently since Induction does not require annotations, it provides JDK 1.4 users with a powerful, modern MVC framework.
 
Spring MVC support variety of Views how is Induction compare to that?

Yes, Spring MVC supports more view technologies currently. The templating engine in Induction is pluggable, the current plugin integrates with Freemarker. A templating engine plugin is currently capable of dispatching to any view technology. However there is also consideration to introduce support for multiple view handlers with the dispatch being manage by Induction.
 
Spring MVC support REST can induction support multiple mime type in built?

I am not what you mean by "multiple mime type in built", but each Induction view can return any mime type, and you can do REST style apps since the URL resolution is completely under your control via resolvers. You may even be able to configure the default ShortURL resolvers to do this.

How does the framework support form bean binding?

You request and object of type Form in your controller method (or constructor in the case of views).

 I am not trying to be rude but you guys has lot of ground to cover to compare it to Spring MVC or another MVC.

I respectfully disagree, Spring MVC does not even come close to Induction in some key areas:

- Induction supports dynamic reloading, saving a gobs of time, Spring MVC does not!
- Induction's support for handling redirects is *way* more advanced than anything in Spring MVC.
- Induction's auto-discovering ShortURL resolvers are probably the most advanced of any MVC framework
- Induction's support for MVC dependency analysis is again unheard of in any other MVC framework

One of the areas that you guys have advantage over Spring MVC is in the area of model binding to
handler. But that is still not good because area of design by contract is not addressed!!.

I do not see how the "design by contract" principle applies here.

Some exciting things are planned for the coming versions of Induction including built-in Tiles like fragment support, built-in AJAX support and more.

Thanks again for your feedback, and please do keep it coming.

Regards,
Adi

--
Acciente, LLC
Systems Architecture and Software Design

www.acciente.com
www.inductionframework.org
Reply all
Reply to author
Forward
0 new messages