<?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>Commentaires sur : Hands on Wicket &#8211; Partie 3</title>
	<atom:link href="http://blog.xebia.fr/2008/03/07/hands-on-wicket-partie-3/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.xebia.fr/2008/03/07/hands-on-wicket-partie-3/</link>
	<description>J2EE, Agilité et SOA</description>
	<lastBuildDate>Tue, 09 Mar 2010 11:53:56 +0100</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Par : Blog Xebia France - Hands on Wicket - Partie 4</title>
		<link>http://blog.xebia.fr/2008/03/07/hands-on-wicket-partie-3/comment-page-1/#comment-5394</link>
		<dc:creator>Blog Xebia France - Hands on Wicket - Partie 4</dc:creator>
		<pubDate>Wed, 23 Apr 2008 07:57:39 +0000</pubDate>
		<guid isPermaLink="false">http://blog.xebia.fr/2008/03/07/hands-on-wicket-partie-3/#comment-5394</guid>
		<description>[...] les précédents articles sur Wicket, nous avons exploré les bases du framework. Nous allons nous intéresser maintenant à [...]</description>
		<content:encoded><![CDATA[<p>[...] les précédents articles sur Wicket, nous avons exploré les bases du framework. Nous allons nous intéresser maintenant à [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Manuel Eveno</title>
		<link>http://blog.xebia.fr/2008/03/07/hands-on-wicket-partie-3/comment-page-1/#comment-4743</link>
		<dc:creator>Manuel Eveno</dc:creator>
		<pubDate>Mon, 10 Mar 2008 10:11:06 +0000</pubDate>
		<guid isPermaLink="false">http://blog.xebia.fr/2008/03/07/hands-on-wicket-partie-3/#comment-4743</guid>
		<description>Merci pour vos remarques ! Voici mes quelques éléments de réponse ...

&lt;strong&gt;&gt;&gt; En ce qui concerne la gestion de la session, [...]&lt;/strong&gt;

C&#039;est tout à fait possible en effet (comme décrit ici : http://cwiki.apache.org/WICKET/custom-websession-storing-objects-in-session.html) mais j&#039;ai l&#039;impression qu&#039;on risque de perdre plusieurs fonctionnalités :
&lt;ul&gt;
	&lt;li&gt;si on ne passe pas par get/setAttribute, l&#039;objet n&#039;est pas réellement stocké  dans la session HTTP (via ISessionStore) : la réplication de session en cluster ne fonctionnera donc plus.&lt;/li&gt;
	&lt;li&gt;Wicket permet aussi de changer d&#039;implémentation de ISessionStore. La encore les objets qui ne sont pas stockés par setAttribute ne seront pas vus ni stockés dans ce ISessionStore.&lt;/li&gt;
&lt;/ul&gt;

Bien sur, sans problématique de cluster, la simplicité prime :)

&lt;strong&gt;&gt;&gt; Encore à propos de la session, et pour éviter les casts [...] &lt;/strong&gt;

En effet, on fait systématiquement hériter nos pages d&#039;une page générique offrant l&#039;accès à notre session. Il faut aussi le faire pour les formulaires (Form) et éventuellement les composants spécifiques que l&#039;on développe (Component) sous peine de retrouver des casts de ce genre :
((CommonPage) getPage()).getSession().getCart();

&lt;strong&gt;&gt;&gt; Enfin, pour ce qui est de Spring, je voudrais émettre deux remarques:
&gt;&gt; - Il faut aussi wicket-ioc.jar dans le classpath&lt;/strong&gt;

C&#039;est exact mais utilisant maven2 dans mes projets, la dépendance a été &quot;tirée&quot; sans que je m&#039;en aperçoive ;)

&lt;strong&gt;&gt;&gt; - Mais surtout, toute la partie XML est superflue [...]&lt;/strong&gt;

Sauf si on veut injecter des beans dans l&#039;objet application ;)
L&#039;héritage de SpringWebApplication permet aussi d&#039;avoir accès à l&#039;applicationContext de Spring et de jouer avec l&#039;initialisation des beans via des proxy. 

En fait, j&#039;ai juste suivi la documentation concernant Spring qui explique les différentes approches :
http://cwiki.apache.org/WICKET/spring.html
</description>
		<content:encoded><![CDATA[<p>Merci pour vos remarques ! Voici mes quelques éléments de réponse &#8230;</p>
<p><strong>>> En ce qui concerne la gestion de la session, [...]</strong></p>
<p>C&#8217;est tout à fait possible en effet (comme décrit ici : <a href="http://cwiki.apache.org/WICKET/custom-websession-storing-objects-in-session.html)" rel="nofollow">http://cwiki.apache.org/WICKET/custom-websession-storing-objects-in-session.html)</a> mais j&#8217;ai l&#8217;impression qu&#8217;on risque de perdre plusieurs fonctionnalités :</p>
<ul>
<li>si on ne passe pas par get/setAttribute, l&#8217;objet n&#8217;est pas réellement stocké  dans la session HTTP (via ISessionStore) : la réplication de session en cluster ne fonctionnera donc plus.</li>
<li>Wicket permet aussi de changer d&#8217;implémentation de ISessionStore. La encore les objets qui ne sont pas stockés par setAttribute ne seront pas vus ni stockés dans ce ISessionStore.</li>
</ul>
<p>Bien sur, sans problématique de cluster, la simplicité prime <img src='http://blog.xebia.fr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>>> Encore à propos de la session, et pour éviter les casts [...] </strong></p>
<p>En effet, on fait systématiquement hériter nos pages d&#8217;une page générique offrant l&#8217;accès à notre session. Il faut aussi le faire pour les formulaires (Form) et éventuellement les composants spécifiques que l&#8217;on développe (Component) sous peine de retrouver des casts de ce genre :<br />
((CommonPage) getPage()).getSession().getCart();</p>
<p><strong>>> Enfin, pour ce qui est de Spring, je voudrais émettre deux remarques:<br />
>> &#8211; Il faut aussi wicket-ioc.jar dans le classpath</strong></p>
<p>C&#8217;est exact mais utilisant maven2 dans mes projets, la dépendance a été &laquo;&nbsp;tirée&nbsp;&raquo; sans que je m&#8217;en aperçoive <img src='http://blog.xebia.fr/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><strong>>> &#8211; Mais surtout, toute la partie XML est superflue [...]</strong></p>
<p>Sauf si on veut injecter des beans dans l&#8217;objet application <img src='http://blog.xebia.fr/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
L&#8217;héritage de SpringWebApplication permet aussi d&#8217;avoir accès à l&#8217;applicationContext de Spring et de jouer avec l&#8217;initialisation des beans via des proxy. </p>
<p>En fait, j&#8217;ai juste suivi la documentation concernant Spring qui explique les différentes approches :<br />
<a href="http://cwiki.apache.org/WICKET/spring.html" rel="nofollow">http://cwiki.apache.org/WICKET/spring.html</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : jsevellec</title>
		<link>http://blog.xebia.fr/2008/03/07/hands-on-wicket-partie-3/comment-page-1/#comment-4742</link>
		<dc:creator>jsevellec</dc:creator>
		<pubDate>Mon, 10 Mar 2008 09:31:41 +0000</pubDate>
		<guid isPermaLink="false">http://blog.xebia.fr/2008/03/07/hands-on-wicket-partie-3/#comment-4742</guid>
		<description>Un framework web qu&#039;il à l&#039;air bien!!! Sa simplicité d&#039;utilisation en proposant des comportement par défaut est vraiment intéressante.

Cordialement,</description>
		<content:encoded><![CDATA[<p>Un framework web qu&#8217;il à l&#8217;air bien!!! Sa simplicité d&#8217;utilisation en proposant des comportement par défaut est vraiment intéressante.</p>
<p>Cordialement,</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : djo.mos</title>
		<link>http://blog.xebia.fr/2008/03/07/hands-on-wicket-partie-3/comment-page-1/#comment-4731</link>
		<dc:creator>djo.mos</dc:creator>
		<pubDate>Sun, 09 Mar 2008 04:14:17 +0000</pubDate>
		<guid isPermaLink="false">http://blog.xebia.fr/2008/03/07/hands-on-wicket-partie-3/#comment-4731</guid>
		<description>Bonjour et merci pour la série Wicket ;)
Je me permets d&#039;émettre quelques chtites remarques/suggestions:
En ce qui concerne la gestion de la session, et pour respecter encore plus l&#039;approche OO de Wicket, je proposerais d&#039;y aller en POJO, c&#039;est à dire laisser tomber l&#039;apptoche par Map, même en interne, et d&#039;ajouter un attribut de type Cart dans la classe qui étend WebSession ainsi que son accesseur/mutateur.

Encore à propos de la session, et pour éviter les casts à chaque fois qu&#039;on récupère la session, on peut utiliser les ellipses de Java 5 et redéfinissant la méthode getSession dans la page en cours avec comme type de retour notre propore session, de cette façon:

@Override
public MySession getSession(){
  return (MySession)super.getSession();
}

Enfin, pour ce qui est de Spring, je voudrais émettre deux remarques:
- Il faut aussi wicket-ioc.jar dans le classpath
- Mais surtout, toute la partie XML est superflue: pas besoin de déclarer la WebApplication comme Bean Spring dans applicationContext.xml, et pas besoin de toucher au filtre de wicket: Seule addComponentInstantiationListener(new SpringComponentInjector(this)); est nécessaire ;-) (Il faut bien sûr déclarer les listeners de Spring dans web.xml comme d&#039;habitude).

Cordialement.</description>
		<content:encoded><![CDATA[<p>Bonjour et merci pour la série Wicket <img src='http://blog.xebia.fr/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
Je me permets d&#8217;émettre quelques chtites remarques/suggestions:<br />
En ce qui concerne la gestion de la session, et pour respecter encore plus l&#8217;approche OO de Wicket, je proposerais d&#8217;y aller en POJO, c&#8217;est à dire laisser tomber l&#8217;apptoche par Map, même en interne, et d&#8217;ajouter un attribut de type Cart dans la classe qui étend WebSession ainsi que son accesseur/mutateur.</p>
<p>Encore à propos de la session, et pour éviter les casts à chaque fois qu&#8217;on récupère la session, on peut utiliser les ellipses de Java 5 et redéfinissant la méthode getSession dans la page en cours avec comme type de retour notre propore session, de cette façon:</p>
<p>@Override<br />
public MySession getSession(){<br />
  return (MySession)super.getSession();<br />
}</p>
<p>Enfin, pour ce qui est de Spring, je voudrais émettre deux remarques:<br />
- Il faut aussi wicket-ioc.jar dans le classpath<br />
- Mais surtout, toute la partie XML est superflue: pas besoin de déclarer la WebApplication comme Bean Spring dans applicationContext.xml, et pas besoin de toucher au filtre de wicket: Seule addComponentInstantiationListener(new SpringComponentInjector(this)); est nécessaire <img src='http://blog.xebia.fr/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  (Il faut bien sûr déclarer les listeners de Spring dans web.xml comme d&#8217;habitude).</p>
<p>Cordialement.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
