Kamil Rembalski wrote:

Hi,

I've been playing with wicket some time ago. In the meantime I have
looked at other similar frameworks, and so far, Wicket is my favorite.
It is'nt too swing-like (compare the effort of creating a data table
in echo and wicket) and its templates are pure HTML (compare with the
JSF tag).

Here are few questions I have:

One of things that quite quickly came to my mind is the integration of
Wicket with Spring/ other IoC container.
I am aware that Wicket is not supposed to be XML-configurable. But
there are hordes of XML-config-adicts in the java world, who will not
use anything that is not xml-configurable. Optional use of Spring,
using method/constructor injection would give them such a possibility
and would not force other people to write config files.
Here are a few examples of what could be done:
Navigation definition: Using spring, a JSF-like navigation config could be created. One of
the ways of doing this would be to create a sublcass of HtmlPage that
would have a setter for forward map and a forward(String) method. The
map itself would be defined in Spring appContext and spring would
inject it into the page. Of course the page would have to be retrieved
from Spring's Application Context...
Authentication configuration: would allow the user to configure for which pages does the authentication occur.
I am sure there are many other things that could be achieved with
Spring (for example configurable validation, not to mention basic
application settings...). I just do not know if I am on the right
track... Spring is 'something like a new appserver', but it will be
used by many view frameworks ( Struts 2.0 for JSF in the future, or
spring-jsf today)


if IOC XML config can be achieved without serious changes to the existing API, that sounds like a huge win to me. i doubt this will happen in 1.0, but why not fork off an experiment to make sure we're not making decisions in 1.0 that would make IOC harder in 1.1? i think the devs here would be very interested to hear your thoughts.

Components are great. If you want to use a calendar, just download a
jar and use the component. But what if the component's look does not
fill your needs? What if for example your client for some twisted
reason wants password textbox to be above the login textbox in
SignInPanel? Does Wicket have a mechanism for overriding component's
html resources? Or for overriding the default images (like those in
the Tree component?) And is it possible to provide such a mechanism at
all?


i haven't caught up with localization changes, but that would address what you're after. you might want to read the localization and skinning discussions. last i looked, it was on the right path here...

BTW, don't you think that components that contain their own images,
html, etc. are a little bit in the opposition to Wicket's html-centric
nature? In other words, if a single [span
componentName="compicatedComponent"] in the input markup spills out 2K
of html code completely out of control of the WYSIWIG tool, can we
talk about the maintainability of the templates using those tools?


tapestry has the same issue. as you nest and componentize things, it gets harder to understand what the final look will be since you work on the pieces and not the whole.

The only disadvantage of wicket is that my company will probably never
use it (beurocracy). And maybe problems with marketing - tapestry was
out there for a few years and still not that many people have heard
about it... And maybe too many final classes - I could not extend
Cell...


the final classes are totally up for changing. i write code as defensively as possible because i want people to justify extensibility that hasn't been explicitly designed for. my own personal taste would be to make all classes final by default and require something like "extensible class Foo" to make it subclassable. i've seen quite a few problems out there because people hadn't thought subclassing through. better to prevent things you haven't thought through fully yet. in general, making all these classes final forces people to debate removing the final keyword, which makes them think about why it needs removing and what might be a better alterative (if any). i don't recall the Cell example, but if you make your point to the group, i'm sure rationality will prevail if what you want is the best approach.

         jon

If I'm speaking nonsense, please let me know...

Cheers :)


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. http://productguide.itmanagersjournal.com/
_______________________________________________
Wicket-develop mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/wicket-develop






-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. http://productguide.itmanagersjournal.com/
_______________________________________________
Wicket-develop mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/wicket-develop

Reply via email to