<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: What I hate about Wicket Framework</title>
	<atom:link href="http://www.jtict.com/blog/hate-wicket-framework/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jtict.com/blog/hate-wicket-framework/</link>
	<description>About programming stuff</description>
	<lastBuildDate>Wed, 01 Feb 2012 06:14:44 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
	<item>
		<title>By: henk</title>
		<link>http://www.jtict.com/blog/hate-wicket-framework/comment-page-1/#comment-27176</link>
		<dc:creator>henk</dc:creator>
		<pubDate>Sat, 15 Oct 2011 13:08:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.jtict.com/blog/?p=49#comment-27176</guid>
		<description>Regarding the viewstate, there are indeed advantages to having it either client-side or server-side. JSF offers the user this choice, but unfortunately it&#039;s a global setting in JSF. It would be even better if this could be chosen per view or for the true control freak even per fragment/component. (doesn&#039;t the latest version of ASP.NET allows this?)

One thing that does help with keeping the viewstate size down in JSF 2.0 is the so-called partial state saving. This only puts the delta changes in the viewstate, which can cause a massive reduction in size.

Regarding the URLs, I noticed that some Wicket sites like ov-chipkaart.nl also put &quot;wicket:interface&quot; in the URL and multiple colons, e.g.

https://www.ov-chipkaart.nl/?wicket:interface=:1:1::: 

This looks worse than http://example.com/product/abc/.1.2

It seems to be a known problem: http://osdir.com/ml/users-wicket.apache.org/2011-05/msg00206.html</description>
		<content:encoded><![CDATA[<p>Regarding the viewstate, there are indeed advantages to having it either client-side or server-side. JSF offers the user this choice, but unfortunately it&#8217;s a global setting in JSF. It would be even better if this could be chosen per view or for the true control freak even per fragment/component. (doesn&#8217;t the latest version of ASP.NET allows this?)</p>
<p>One thing that does help with keeping the viewstate size down in JSF 2.0 is the so-called partial state saving. This only puts the delta changes in the viewstate, which can cause a massive reduction in size.</p>
<p>Regarding the URLs, I noticed that some Wicket sites like ov-chipkaart.nl also put &#8220;wicket:interface&#8221; in the URL and multiple colons, e.g.</p>
<p><a href="https://www.ov-chipkaart.nl/?wicket:interface=:1:1::" rel="nofollow">https://www.ov-chipkaart.nl/?wicket:interface=:1:1::</a>: </p>
<p>This looks worse than <a href="http://example.com/product/abc/.1.2" rel="nofollow">http://example.com/product/abc/.1.2</a></p>
<p>It seems to be a known problem: <a href="http://osdir.com/ml/users-wicket.apache.org/2011-05/msg00206.html" rel="nofollow">http://osdir.com/ml/users-wicket.apache.org/2011-05/msg00206.html</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rafael</title>
		<link>http://www.jtict.com/blog/hate-wicket-framework/comment-page-1/#comment-27084</link>
		<dc:creator>Rafael</dc:creator>
		<pubDate>Thu, 13 Oct 2011 18:23:05 +0000</pubDate>
		<guid isPermaLink="false">http://www.jtict.com/blog/?p=49#comment-27084</guid>
		<description>I think controller-to-view is simpler to learn but when you have to develop complex stateful pages than you have to learn some javascript instead of starting crying &quot;oh! my framework doesn&#039;t code the javascript for me&quot;. Grow up! Model-to-view frameworks are more popular because they are better, just it.</description>
		<content:encoded><![CDATA[<p>I think controller-to-view is simpler to learn but when you have to develop complex stateful pages than you have to learn some javascript instead of starting crying &#8220;oh! my framework doesn&#8217;t code the javascript for me&#8221;. Grow up! Model-to-view frameworks are more popular because they are better, just it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Reply to Comparing Java Web Frameworks &#171; henk53</title>
		<link>http://www.jtict.com/blog/hate-wicket-framework/comment-page-1/#comment-27041</link>
		<dc:creator>Reply to Comparing Java Web Frameworks &#171; henk53</dc:creator>
		<pubDate>Wed, 12 Oct 2011 21:17:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.jtict.com/blog/?p=49#comment-27041</guid>
		<description>[...] What I hate about Wicket Framework Apache Wicket Share this:TwitterFacebookLike this:LikeBe the first to like this [...]</description>
		<content:encoded><![CDATA[<p>[...] What I hate about Wicket Framework Apache Wicket Share this:TwitterFacebookLike this:LikeBe the first to like this [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Frank Silbermann</title>
		<link>http://www.jtict.com/blog/hate-wicket-framework/comment-page-1/#comment-25928</link>
		<dc:creator>Frank Silbermann</dc:creator>
		<pubDate>Wed, 14 Sep 2011 19:59:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.jtict.com/blog/?p=49#comment-25928</guid>
		<description>Christian:  &quot;well, are there so much Components I actually reuse? I had not too much of them.&quot;

That probably reflects your style of program design.  COBOL programmers also re-use code very rarely; their language makes doing so very difficult, and when COBOL programmers try more modern languages they often don&#039;t appreciate what the newer modularization features can do for them.

The trend in programming languages is to increase support for code re-use, going from macros in Assembler and include files in COBOL, to functions and procedures with local variables in Pascal and C, to abstract data types with local functions in Modula-2 and Ada, to object-oriented code with implementation inheritance in languages such as Java.  Of course, making intelligent use of each innovation requires a new set of rules and heuristics for program design (loose coupling, high internal cohesion, the Liskov substitution principle, etc.).

Most approaches to web programming make reuse of display code very difficult, so as with COBOL programmers, most web programmers don&#039;t think to look for reuse opportunities.  Likewise, just as all the variables in the typical COBOL program (in the WORKING STORAGE section of the DATA DIVISION) are global to all of the procedural code, in the typical web application all of a form&#039;s data is in the HTTPRequest object -- global to the entire front servlet.  Re-use based on &quot;include&quot; files and template processing is like going back to the days of Assembler program macros again!

A framework such as Wicket gives you much better opportunities for reuse of display code, information hiding, loose coupling, etc., but as with the COBOL programmer who learns Java, the developer still has to learn to make use of object orientation when coding the display.  (Former fat-client Swing developers may have the advantage here.)</description>
		<content:encoded><![CDATA[<p>Christian:  &#8220;well, are there so much Components I actually reuse? I had not too much of them.&#8221;</p>
<p>That probably reflects your style of program design.  COBOL programmers also re-use code very rarely; their language makes doing so very difficult, and when COBOL programmers try more modern languages they often don&#8217;t appreciate what the newer modularization features can do for them.</p>
<p>The trend in programming languages is to increase support for code re-use, going from macros in Assembler and include files in COBOL, to functions and procedures with local variables in Pascal and C, to abstract data types with local functions in Modula-2 and Ada, to object-oriented code with implementation inheritance in languages such as Java.  Of course, making intelligent use of each innovation requires a new set of rules and heuristics for program design (loose coupling, high internal cohesion, the Liskov substitution principle, etc.).</p>
<p>Most approaches to web programming make reuse of display code very difficult, so as with COBOL programmers, most web programmers don&#8217;t think to look for reuse opportunities.  Likewise, just as all the variables in the typical COBOL program (in the WORKING STORAGE section of the DATA DIVISION) are global to all of the procedural code, in the typical web application all of a form&#8217;s data is in the HTTPRequest object &#8212; global to the entire front servlet.  Re-use based on &#8220;include&#8221; files and template processing is like going back to the days of Assembler program macros again!</p>
<p>A framework such as Wicket gives you much better opportunities for reuse of display code, information hiding, loose coupling, etc., but as with the COBOL programmer who learns Java, the developer still has to learn to make use of object orientation when coding the display.  (Former fat-client Swing developers may have the advantage here.)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Christian</title>
		<link>http://www.jtict.com/blog/hate-wicket-framework/comment-page-1/#comment-20592</link>
		<dc:creator>Christian</dc:creator>
		<pubDate>Fri, 06 May 2011 22:24:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.jtict.com/blog/?p=49#comment-20592</guid>
		<description>I can fully agree on the &quot;high learning curve&quot;  and the most of the rest. In fact I wrote a similar blog post here: http://www.grobmeier.de/apache-wicket-versus-apache-struts-2-04052011.html

Wicket users usually say its easy and hey, its component oriented. But one can create good software even outside the Wicket world. You can even create components. In all the cases I had to work with Wicket, I needed HTML/CSS/JavaScript skills. And components... well, are there so much Components I actually reuse? I had not too much of them.</description>
		<content:encoded><![CDATA[<p>I can fully agree on the &#8220;high learning curve&#8221;  and the most of the rest. In fact I wrote a similar blog post here: <a href="http://www.grobmeier.de/apache-wicket-versus-apache-struts-2-04052011.html" rel="nofollow">http://www.grobmeier.de/apache-wicket-versus-apache-struts-2-04052011.html</a></p>
<p>Wicket users usually say its easy and hey, its component oriented. But one can create good software even outside the Wicket world. You can even create components. In all the cases I had to work with Wicket, I needed HTML/CSS/JavaScript skills. And components&#8230; well, are there so much Components I actually reuse? I had not too much of them.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Victor Dolirio</title>
		<link>http://www.jtict.com/blog/hate-wicket-framework/comment-page-1/#comment-11942</link>
		<dc:creator>Victor Dolirio</dc:creator>
		<pubDate>Fri, 29 Oct 2010 11:00:43 +0000</pubDate>
		<guid isPermaLink="false">http://www.jtict.com/blog/?p=49#comment-11942</guid>
		<description>I see you was fair with your ideas and I agree just a little. Regarding &quot;Session downsides&quot; we all must know that everything can be changed. The &quot;timeout&quot; of sessions can be disabled (although generally not recommended) or changed. The &quot;memory consumption&quot; can be controlled in several ways, i.e. by using bookmarkable urls instead of session navigations. Which in turn can be used with restfull patterns. All this stuff is a matter of taste and requirements. About learning curve I agree with @kodeninja.</description>
		<content:encoded><![CDATA[<p>I see you was fair with your ideas and I agree just a little. Regarding &#8220;Session downsides&#8221; we all must know that everything can be changed. The &#8220;timeout&#8221; of sessions can be disabled (although generally not recommended) or changed. The &#8220;memory consumption&#8221; can be controlled in several ways, i.e. by using bookmarkable urls instead of session navigations. Which in turn can be used with restfull patterns. All this stuff is a matter of taste and requirements. About learning curve I agree with @kodeninja.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Erik van Oosten</title>
		<link>http://www.jtict.com/blog/hate-wicket-framework/comment-page-1/#comment-9318</link>
		<dc:creator>Erik van Oosten</dc:creator>
		<pubDate>Mon, 09 Aug 2010 11:02:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.jtict.com/blog/?p=49#comment-9318</guid>
		<description>Regarding &quot;HTML IS NOT THAT PURE&quot;, add the following to your application#init and all wicket artifacts in the html disappear:

        getMarkupSettings().setStripWicketTags(true);


IMHO this should have been the default.</description>
		<content:encoded><![CDATA[<p>Regarding &#8220;HTML IS NOT THAT PURE&#8221;, add the following to your application#init and all wicket artifacts in the html disappear:</p>
<p>        getMarkupSettings().setStripWicketTags(true);</p>
<p>IMHO this should have been the default.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: N</title>
		<link>http://www.jtict.com/blog/hate-wicket-framework/comment-page-1/#comment-8807</link>
		<dc:creator>N</dc:creator>
		<pubDate>Thu, 15 Jul 2010 03:23:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.jtict.com/blog/?p=49#comment-8807</guid>
		<description>&gt;Some argue that memory is cheap. 
I can not believe that setting apart such giants as Google you may easily run out of memory in 2010. Except if you use it in some ridicules way, like keeping &quot;state of HTML elements&quot;. 

&gt;Frank Silbermann says:
&gt;But what if I _want_ to use Java?
According to what you wright what you want is 1:1 HybridJava.</description>
		<content:encoded><![CDATA[<p>&gt;Some argue that memory is cheap.<br />
I can not believe that setting apart such giants as Google you may easily run out of memory in 2010. Except if you use it in some ridicules way, like keeping &#8220;state of HTML elements&#8221;. </p>
<p>&gt;Frank Silbermann says:<br />
&gt;But what if I _want_ to use Java?<br />
According to what you wright what you want is 1:1 HybridJava.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: admin</title>
		<link>http://www.jtict.com/blog/hate-wicket-framework/comment-page-1/#comment-8747</link>
		<dc:creator>admin</dc:creator>
		<pubDate>Sun, 11 Jul 2010 14:02:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.jtict.com/blog/?p=49#comment-8747</guid>
		<description>@&quot;Anonymous Coward&quot;
Memory:
Wicket creates session by default. When you have a high traffic site, than automatic session creation can increase memory usage a lot, even when you try to keep pages low in size. And on high traffic sites, you don&#039;t want session to be swapped to disk, otherwise performance will suffer a lot.

Stateless controller-to-view/action-based frameworks only keep user input data client sided (temporary send to server when sending a request), where a Wicket page keeps most/all data (not just user input, but also view objects/data etc) server sided, and thus uses more memory. Processing user input data send from a client hardly uses CPU more than a request send from a client to Wicket. Unless you&#039;re talking about viewstate data.

---

Clientside view state:
Like I already said, both client-sided and server-sided state have drawbacks. If every single click sends half a meg of data back, than there clearly is something wrong with the design of the webapp; wrong design decisions have been made. But that doesn&#039;t imply that client sided viewstate cannot have any advantages in some scenario&#039;s. What I like to see is a framework that offers both.


---
HIGH LEARNING CURVE:
Like I said, I like component based frameworks. So I understand why you hate those other MVC frameworks. I also agree that Wicket offers more, and thus there is more to learn.
But my point is that after I read the recommended Wicket book, I still didn&#039;t have a clear picture in the way Wicket is architectured. This documentation aspect (and not just the API on it&#039;s own) makes Wicket extra difficult.


---

Wicket URLS:
No, I don&#039;t prefer 2000 char urls. What I do prefer, like I already said, are urls that don&#039;t reveal any framework or technology. This makes the webapp more flexible to change from framework without loosing Search Engine indexed pages.
I had some cases where some unwanted redirects occurred on first page hits, where the post-redirect-get pattern isn&#039;t needed. But maybe I should change the rendering strategy like you say.

---

HTML IS NOT THAT PURE:
Good point. IMO setRenderBodyOnly than should be enabled by default when using repeaters. I&#039;ll change the post.


---

STATIC COMPONENT TREE
&quot;You can argue that the atomic pieces inside the repeater, the panels, still contain predefined markup.&quot;

That is exactly my point.
I see these options to make a complete dynamic tree:
-The combination of repeaters, panels in panels, and logic, and maybe fragments. When you create some generic panel that only contains either a repeater or a component, than you can create a tree which contains panels in repeaters in panels in repeaters in panels etc. But this is a hell to code, read and maintain.
-Skip components/objects, and just write HTML directly. Which can be a lot easier than the first option, but it can also increases maintenance, and it skips the Wicket API.
-Use IMarkupResourceStreamProvider to change the Markup stream. Which sounds difficult to me (I&#039;m not a Wicket expert), and feels more like hacking it yourself to accomplish it.
-Use some code written by someone else that supports it. Like Wicket Webbeans if you need to make HTML forms based on beans.

So my conclusion now is, a complete dynamic tree structure is possible, but hard.

&quot;Show me another Java based component framework where you can swap components so freely?&quot;

Google Web Toolkit (GWT). In GWT it&#039;s easy to create a complete full dynamic tree structure, because it doesn&#039;t hav a dependency on predefined Markup. In GWT, you can do:
VerticalPanel mainPanel = new VerticalPanel(); RootPanel.get(&quot;...&quot;).add(mainPanel); Button b = new Button(&quot;....&quot;); mainPanel.add(b);
Without defining any HTML markup structure or placeholders upfront.
(GWT has other big drawbacks, but that&#039;s a different story.)

---

VERY VERBOSE
Can you show/point where I can find some more info about the QueryModel approach? (I&#039;m not a Wicket expert. I use LoadableDetachableModel because it is the best approach that I see that is described in the book Wicket in Action.) Anyway, QueryModel itself is an extra layer if you follow the DAO pattern.

It is a very commons practice to put all data access logic in DAOs, because of the Separation of Concerns principle. Putting any queries (like SQL, HQL or criteria API) in a Wicket WebPage subclass or Wicket component subclass violates the concept of using DAOs.

If you follow the principle, then you need DAOs. Those DAOs need to be called via Wicket code. The data the DAOs return, cannot be used directly in Wicket components, because in Wicket that causes everything to be serialized, and causes sessions to be blown up. In Wicket, models are needed as an intermediate layer. This intermediate layer is extra verbosity, but needed due to the way Wicket is architectured. (There are also frameworks that don&#039;t require such an extra layer.)



---------------------------

@Craig
I have never worked with designers, but I&#039;m wondering why a developer has to be directly involved in framework/Wicket mixed HTML markup. I would prefer to see it indirectly instead of directly, by letting the designer give you a 100% HTML/CSS (Without wicket ID&#039;s and fragments), and that you (the developer) converts it to a Wicket mixed HTML markup. Than the designer doesn&#039;t have a dependency on some particular framework markup. But I agree that if you let designers directly involve in framework mixed HTML markup, than Wicket is probably one of the most comfortable frameworks for designers.

&quot;Ajax dead simple&quot;, is something I see as a benefit of most component frameworks. It&#039;s one of the reasons why I like component based frameworks.</description>
		<content:encoded><![CDATA[<p>@&#8221;Anonymous Coward&#8221;<br />
Memory:<br />
Wicket creates session by default. When you have a high traffic site, than automatic session creation can increase memory usage a lot, even when you try to keep pages low in size. And on high traffic sites, you don&#8217;t want session to be swapped to disk, otherwise performance will suffer a lot.</p>
<p>Stateless controller-to-view/action-based frameworks only keep user input data client sided (temporary send to server when sending a request), where a Wicket page keeps most/all data (not just user input, but also view objects/data etc) server sided, and thus uses more memory. Processing user input data send from a client hardly uses CPU more than a request send from a client to Wicket. Unless you&#8217;re talking about viewstate data.</p>
<p>&#8212;</p>
<p>Clientside view state:<br />
Like I already said, both client-sided and server-sided state have drawbacks. If every single click sends half a meg of data back, than there clearly is something wrong with the design of the webapp; wrong design decisions have been made. But that doesn&#8217;t imply that client sided viewstate cannot have any advantages in some scenario&#8217;s. What I like to see is a framework that offers both.</p>
<p>&#8212;<br />
HIGH LEARNING CURVE:<br />
Like I said, I like component based frameworks. So I understand why you hate those other MVC frameworks. I also agree that Wicket offers more, and thus there is more to learn.<br />
But my point is that after I read the recommended Wicket book, I still didn&#8217;t have a clear picture in the way Wicket is architectured. This documentation aspect (and not just the API on it&#8217;s own) makes Wicket extra difficult.</p>
<p>&#8212;</p>
<p>Wicket URLS:<br />
No, I don&#8217;t prefer 2000 char urls. What I do prefer, like I already said, are urls that don&#8217;t reveal any framework or technology. This makes the webapp more flexible to change from framework without loosing Search Engine indexed pages.<br />
I had some cases where some unwanted redirects occurred on first page hits, where the post-redirect-get pattern isn&#8217;t needed. But maybe I should change the rendering strategy like you say.</p>
<p>&#8212;</p>
<p>HTML IS NOT THAT PURE:<br />
Good point. IMO setRenderBodyOnly than should be enabled by default when using repeaters. I&#8217;ll change the post.</p>
<p>&#8212;</p>
<p>STATIC COMPONENT TREE<br />
&#8220;You can argue that the atomic pieces inside the repeater, the panels, still contain predefined markup.&#8221;</p>
<p>That is exactly my point.<br />
I see these options to make a complete dynamic tree:<br />
-The combination of repeaters, panels in panels, and logic, and maybe fragments. When you create some generic panel that only contains either a repeater or a component, than you can create a tree which contains panels in repeaters in panels in repeaters in panels etc. But this is a hell to code, read and maintain.<br />
-Skip components/objects, and just write HTML directly. Which can be a lot easier than the first option, but it can also increases maintenance, and it skips the Wicket API.<br />
-Use IMarkupResourceStreamProvider to change the Markup stream. Which sounds difficult to me (I&#8217;m not a Wicket expert), and feels more like hacking it yourself to accomplish it.<br />
-Use some code written by someone else that supports it. Like Wicket Webbeans if you need to make HTML forms based on beans.</p>
<p>So my conclusion now is, a complete dynamic tree structure is possible, but hard.</p>
<p>&#8220;Show me another Java based component framework where you can swap components so freely?&#8221;</p>
<p>Google Web Toolkit (GWT). In GWT it&#8217;s easy to create a complete full dynamic tree structure, because it doesn&#8217;t hav a dependency on predefined Markup. In GWT, you can do:<br />
VerticalPanel mainPanel = new VerticalPanel(); RootPanel.get(&#8220;&#8230;&#8221;).add(mainPanel); Button b = new Button(&#8220;&#8230;.&#8221;); mainPanel.add(b);<br />
Without defining any HTML markup structure or placeholders upfront.<br />
(GWT has other big drawbacks, but that&#8217;s a different story.)</p>
<p>&#8212;</p>
<p>VERY VERBOSE<br />
Can you show/point where I can find some more info about the QueryModel approach? (I&#8217;m not a Wicket expert. I use LoadableDetachableModel because it is the best approach that I see that is described in the book Wicket in Action.) Anyway, QueryModel itself is an extra layer if you follow the DAO pattern.</p>
<p>It is a very commons practice to put all data access logic in DAOs, because of the Separation of Concerns principle. Putting any queries (like SQL, HQL or criteria API) in a Wicket WebPage subclass or Wicket component subclass violates the concept of using DAOs.</p>
<p>If you follow the principle, then you need DAOs. Those DAOs need to be called via Wicket code. The data the DAOs return, cannot be used directly in Wicket components, because in Wicket that causes everything to be serialized, and causes sessions to be blown up. In Wicket, models are needed as an intermediate layer. This intermediate layer is extra verbosity, but needed due to the way Wicket is architectured. (There are also frameworks that don&#8217;t require such an extra layer.)</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>@Craig<br />
I have never worked with designers, but I&#8217;m wondering why a developer has to be directly involved in framework/Wicket mixed HTML markup. I would prefer to see it indirectly instead of directly, by letting the designer give you a 100% HTML/CSS (Without wicket ID&#8217;s and fragments), and that you (the developer) converts it to a Wicket mixed HTML markup. Than the designer doesn&#8217;t have a dependency on some particular framework markup. But I agree that if you let designers directly involve in framework mixed HTML markup, than Wicket is probably one of the most comfortable frameworks for designers.</p>
<p>&#8220;Ajax dead simple&#8221;, is something I see as a benefit of most component frameworks. It&#8217;s one of the reasons why I like component based frameworks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Craig tataryn</title>
		<link>http://www.jtict.com/blog/hate-wicket-framework/comment-page-1/#comment-8692</link>
		<dc:creator>Craig tataryn</dc:creator>
		<pubDate>Thu, 08 Jul 2010 19:24:49 +0000</pubDate>
		<guid isPermaLink="false">http://www.jtict.com/blog/?p=49#comment-8692</guid>
		<description>Based on the title of the blog post I thought you were in it to slam Wicket.  But I see it&#039;s actually pretty fair &quot;opinion&quot; of Wicket, so good job.

My only comment is the fact that Wicket lets you work with designers (the creative types that know photoshop/dreamweaver) throughout your development process and into maintenance.  Try that would JSF, JSP, Grails, etc... If you do, you better hope your designer knows how to code and not be reliant on his design tools (ie. hack some html, load in a browser(s), tweak, repeat).

I&#039;d also add &quot;makes AJAX dead simple&quot;.  You don&#039;t have to touch JavaScript, the components take care of it.</description>
		<content:encoded><![CDATA[<p>Based on the title of the blog post I thought you were in it to slam Wicket.  But I see it&#8217;s actually pretty fair &#8220;opinion&#8221; of Wicket, so good job.</p>
<p>My only comment is the fact that Wicket lets you work with designers (the creative types that know photoshop/dreamweaver) throughout your development process and into maintenance.  Try that would JSF, JSP, Grails, etc&#8230; If you do, you better hope your designer knows how to code and not be reliant on his design tools (ie. hack some html, load in a browser(s), tweak, repeat).</p>
<p>I&#8217;d also add &#8220;makes AJAX dead simple&#8221;.  You don&#8217;t have to touch JavaScript, the components take care of it.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

