<?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/"
xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
xmlns:media="http://search.yahoo.com/mrss/"
> <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>Fri, 10 Feb 2012 09:50:25 +0000</lastBuildDate> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=</generator> <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-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-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-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-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>
