Howard, Thiago, Thanks for the responses. I changed the zone declaration in then component's java class to the correct type and used the @InjectComponent annotation instead of @Inject (I must have incorrectly copy/pasted this from an online example) and while the generated HTML source now contains the zones specified as:
<div class="t-zone" zone="org.apache.tapestry5.corelib.components.z...@278a2a" id="zone_1"> ... rather than: <div class="t-zone" zone="<Proxy for ComponentSource(org.apache.tapestry5.services.ComponentSource)>" id="zone_1"> ... the behaviour where action links within one zone are updating another still arises - the frequency is low (and appears less frequent though that is subjective and probably incorrect) - it will happen perhaps once in 10 page refreshes. The href for the action links across ex. 3 zones should be generated as _zone1_ http://localhost:8080/<domain>/<pageName>.<componenName>.<actionLinkId>/<act ivationContext1> http://localhost:8080/<domain>/<pageName>.<componenName>.<actionLinkId>/<act ivationContext2> _zone2_ http://localhost:8080/<domain>/<pageName>.<componenName>_0.<actionLinkId>/<a ctivationContext1> http://localhost:8080/<domain>/<pageName>.<componenName>_0.<actionLinkId>/<a ctivationContext2> _zone3_ http://localhost:8080/<domain>/<pageName>.<componenName>_1.<actionLinkId>/<a ctivationContext1> http://localhost:8080/<domain>/<pageName>.<componenName>_1.<actionLinkId>/<a ctivationContext2> ... and instead has: _zone1_ http://localhost:8080/<domain>/<pageName>.<componenName>.<actionLinkId>/<act ivationContext1> http://localhost:8080/<domain>/<pageName>.<componenName>.<actionLinkId>/<act ivationContext2> _zone2_ http://localhost:8080/<domain>/<pageName>.<componenName>_1.<actionLinkId>/<a ctivationContext1> http://localhost:8080/<domain>/<pageName>.<componenName>_1.<actionLinkId>/<a ctivationContext2> _zone3_ http://localhost:8080/<domain>/<pageName>.<componenName>_1.<actionLinkId>/<a ctivationContext1> http://localhost:8080/<domain>/<pageName>.<componenName>_1.<actionLinkId>/<a ctivationContext2> Is the componentName section of the generated actionlink href taken from the componentZoneId section of the sample action link declaration below: <a t:type="actionlink" t:id="xyzButton" id="prop:xyzButton" context="relevant.context" href="#" t:zone="${componentZoneId}">${xyz.displayText}</a> I must be missing something obvious here. Perhaps the way I have structured my component there is some scenario where when the block is being rendered the component id has not yet been updated / is somehow being shared? Regards, Jim. -----Original Message----- From: Howard Lewis Ship [mailto:hls...@gmail.com] Sent: 05 May 2010 19:42 To: Tapestry users Subject: Re: Zone ID issue Try: @Property @InjectComponent private Zone testZone; On Wed, May 5, 2010 at 11:32 AM, Thiago H. de Paula Figueiredo <thiag...@gmail.com> wrote: > On Wed, 05 May 2010 15:18:18 -0300, Jim O'Callaghan > <j...@peritussolutions.com> wrote: > >> Hello, > > Hi! > >> <t:zone zone="prop:zone" id="${ componentZoneId }" t:update="show"> > > Don't use expansions (${}) when passing values to parameters. It forces the > conversion to String. In this case, it's harmless, as it's already a Strig. > >> 'zone' is a ComponentSource within the associated component java class and >> is defined as follows: >> �...@property >> �...@inject >> �...@id("testZone") >> private ComponentSource zone; > > This is strange, as ComponentSource isn't a component nor a Block, it's an > interface and a service. > > -- > Thiago H. de Paula Figueiredo > Independent Java, Apache Tapestry 5 and Hibernate consultant, developer, and > instructor > Owner, Ars Machina Tecnologia da Informação Ltda. > http://www.arsmachina.com.br > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org > For additional commands, e-mail: users-h...@tapestry.apache.org > > -- Howard M. Lewis Ship Creator of Apache Tapestry The source for Tapestry training, mentoring and support. Contact me to learn how I can get you up and productive in Tapestry fast! (971) 678-5210 http://howardlewisship.com --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org