<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br><div><div>On Nov 14, 2013, at 5:31 AM, Sabine Knöfel &lt;<a href="mailto:sabine.knoefel@gmail.com">sabine.knoefel@gmail.com</a>&gt; wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;"><div dir="ltr">Hi Philipe,<div><br><div>great. I will use it as soon as I switch to 3.0</div><div><br></div><div>Regards</div><div>Sabine</div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Nov 13, 2013 at 10:19 PM, Philippe Marschall [via Smalltalk]<span class="Apple-converted-space">&nbsp;</span><span dir="ltr">&lt;<a href="x-msg://12/user/SendEmail.jtp?type=node&amp;node=4721941&amp;i=0" target="_top" rel="nofollow" link="external">[hidden email]</a>&gt;</span><span class="Apple-converted-space">&nbsp;</span>wrote:<br><blockquote class="gmail_quote" style="border-left-width: 2px; border-left-style: solid; border-left-color: rgb(204, 204, 204); padding: 0px 1em; position: static; z-index: auto;"><div class="HOEnZb"><div class="h5">On Wed, Nov 13, 2013 at 4:59 PM, Esteban Lorenzano &lt;<a href="http://user/SendEmail.jtp?type=node&amp;node=4721861&amp;i=0" rel="nofollow" link="external" target="_blank">[hidden email]</a>&gt; wrote:<div><div class="shrinkable-quote"><br>&gt; I'm using Seaside-REST for that (even it is not its purpose), but I needed to hack it a bit (bah, not a BIT really...)<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt; See:<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt; in &nbsp;WARestfulFilter subclass: #EveRestFilter:<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt; EveRestFilter &gt;&gt;#shoppingList<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &lt;get&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &lt;path: 'shopping-list'&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; self continueWithRoot: [ :root |<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; root startOn: EveUNOPSShoppingListPanel new ].<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt; EveRestFilter &gt;&gt;#continueWithRoot: aBlock<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; "Continues the execution of the application.<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;I will pass aBlock to the root class of app, which I assume is a REApplication.<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Otherwise, this will fail"<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; | requestContext application session rootComponent |<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; requestContext := self requestContext.<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; application := requestContext application.<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; session := self obtainSessionWithApplication: application context: requestContext.<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; requestContext<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; push: session<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; during: [<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; rootComponent := requestContext rootComponentIfAbsent: [ nil ].<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; rootComponent ifNil: [<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; rootComponent := (application preferenceAt: #rootClass) new.<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; requestContext rootComponent: rootComponent ].<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; rootComponent do: aBlock.<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; self next handleFiltered: requestContext ].<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt; EveRestFilter &gt;&gt;#obtainSessionWithApplication: application context: requestContext<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; | sessionKey session |<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; sessionKey &nbsp;:= application trackingStrategy keyFromContext: requestContext.<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; session := sessionKey ifNotNil: [<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; application cache<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; at: sessionKey<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ifAbsent: [ nil] ].<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; session &nbsp;ifNil: [<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; session := application newSession.<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; application register: session ].<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; ^ session<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt; then in the main component:<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt; EveMainComponent&gt;&gt;startOn: aComponent<span class="Apple-converted-space">&nbsp;</span><br>&gt; &nbsp; &nbsp; &nbsp; &nbsp; contentComponent show: aComponent<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt;<span class="Apple-converted-space">&nbsp;</span><br>&gt; is probably not the best way to do it, but is the easiest way I found, and it works :)</div></div></div></div><div class="im">In Seaside 3.1 there is WARestfulComponentFilter &gt;&gt; #startSessionWithRoot:<span class="Apple-converted-space">&nbsp;</span><br></div></blockquote></div></div></div></blockquote><div><br></div><div>cool :)</div><div>but my intention was to not create a new session each time I use an URL instead a callback... this way (and using session cookies), I can use some "hard links" mixed with my app.</div><div><br></div><div>Esteban&nbsp;</div><div><br></div><div><br></div><br><blockquote type="cite"><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left-width: 2px; border-left-style: solid; border-left-color: rgb(204, 204, 204); padding: 0px 1em; position: static; z-index: auto;"><div class="im"><br>Cheers<span class="Apple-converted-space">&nbsp;</span><br>Philippe<span class="Apple-converted-space">&nbsp;</span><br>_______________________________________________<span class="Apple-converted-space">&nbsp;</span><br>seaside mailing list<span class="Apple-converted-space">&nbsp;</span><br></div><div class="im"><a href="http://user/SendEmail.jtp?type=node&amp;node=4721861&amp;i=1" rel="nofollow" link="external" target="_blank">[hidden email]</a><span class="Apple-converted-space">&nbsp;</span><br><a href="http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside" rel="nofollow" link="external" target="_blank">http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside</a><br><br><br><hr noshade="" size="1"></div><div style="color: rgb(68, 68, 68); font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-family: tahoma, geneva, helvetica, arial, sans-serif;"><div class="im"><div style="font-weight: bold;">If you reply to this email, your message will be added to the discussion below:</div></div><a href="http://forum.world.st/Seaside-and-urls-tp4721764p4721861.html" target="_blank" rel="nofollow" link="external">http://forum.world.st/Seaside-and-urls-tp4721764p4721861.html</a></div><div style="color: rgb(102, 102, 102); font-style: normal; font-variant: normal; font-weight: normal; font-size: 11px; font-family: tahoma, geneva, helvetica, arial, sans-serif; margin-top: 0.4em; line-height: 1.5em;">To start a new topic under Seaside General, email<span class="Apple-converted-space">&nbsp;</span><a href="x-msg://12/user/SendEmail.jtp?type=node&amp;node=4721941&amp;i=1" target="_top" rel="nofollow" link="external">[hidden email]</a><span class="Apple-converted-space">&nbsp;</span><br><div class="im">To unsubscribe from Seaside,<span class="Apple-converted-space">&nbsp;</span><a href="" target="_blank" rel="nofollow" link="external">click here</a>.<br><a href="http://forum.world.st/template/NamlServlet.jtp?macro=macro_viewer&amp;id=instant_html%21nabble%3Aemail.naml&amp;base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&amp;breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml" rel="nofollow" target="_blank" link="external" style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 9px; line-height: normal; font-family: serif;">NAML</a></div></div></blockquote></div><br></div><br><hr align="left" width="300">View this message in context:<span class="Apple-converted-space">&nbsp;</span><a href="http://forum.world.st/Seaside-and-urls-tp4721764p4721941.html">Re: Seaside and urls</a><br>Sent from the<span class="Apple-converted-space">&nbsp;</span><a href="http://forum.world.st/Seaside-General-f86180.html">Seaside General mailing list archive</a><span class="Apple-converted-space">&nbsp;</span>at<span class="Apple-converted-space">&nbsp;</span><a href="http://nabble.com/">Nabble.com</a>.<br>_______________________________________________<br>seaside mailing list<br><a href="mailto:seaside@lists.squeakfoundation.org">seaside@lists.squeakfoundation.org</a><br><a href="http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside">http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside</a></div></blockquote></div><br></body></html>