Re: Tapestry 5.4 and java8
Another option to accesspritected member is to add a new class is same package withstatic shim method On Saturday, March 22, 2014, Kalle Korhonen kalle.o.korho...@gmail.com wrote: On Sat, Mar 22, 2014 at 8:47 AM, Bob Harner bobhar...@gmail.comjavascript:; wrote: True, but that particular visibility change will need to be repeated each time ASM is upgraded in Tapestry, if I'm understanding what you did. You cannot know that. It depends solely on how ASM is changed. Kalle On Mar 22, 2014 11:13 AM, Kalle Korhonen kalle.o.korho...@gmail.com wrote: On Sat, Mar 22, 2014 at 3:56 AM, Bob Harner bobhar...@gmail.com wrote: Kalle, I guess there would be another step? 7) Also made a single change to ASM source, promoted visibility of AnnotationNode.accept from package private to public so I didn't have change to plastic (to instantiate AnnotationNode) ... Or is that what you meant by step 6? Yes, that's what's included in the step 6. Really, we can't describe exact steps to incorporate codebase with unknown future changes. Kalle On Mar 21, 2014 12:40 PM, Kalle Korhonen kalle.o.korho...@gmail.com wrote: On Fri, Mar 21, 2014 at 3:57 AM, Bob Harner bobhar...@gmail.com wrote: Kalle, can you list the steps you went through to do this? I'd like to document the process, since it isn't simply a matter of incrementing the version of a dependency. Sure. It was very simple actually: 1) Have plastic module open on your favorite IDE 2) Download an asm source release from http://forge.ow2.org/projects/asm/ 3) untar the asm source, move the source tree (starting from org) next to plastic/src/external/java 4) delete the existing package org.apache.tapestry5.internal.plastic.asm 5) use the IDE to rename the org.objectweb.asm package to org.apache.tapestry5.internal.plastic.asm 6) fix compilation errors Naturally, your IDE needs to be smart enough to refactor the package names in the class files accordingly. Kalle On Mar 20, 2014 4:16 PM, Kalle Korhonen kalle.o.korho...@gmail.com wrote: Sure, no problem. We still need it released but that might have to wait till 5.4 GA release. Easy enough for those who need it to build it themselves though. Kalle On Thu, Mar 20, 2014 at 1:03 PM, Joachim Van der Auwera li...@progs.be wrote: THanks Kalle for doing this. Kind regards, Joachim On 03/18/2014 08:32 PM, Joachim Van der Auwera wrote: Java8 is now officially available. ASM 5.0 has also been released (see http://forge.ow2.org/forum/ forum.php?forum_id=2302) -- 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
Re: Tapestry 5.4 and java8
On Wed, Mar 26, 2014 at 8:04 AM, Howard Lewis Ship hls...@gmail.com wrote: Another option to accesspritected member is to add a new class is same package withstatic shim method Of course. But at that point, you could just as well fix it in Plastic and access it properly, by instantiating the class first (it has a corresponding, non-static public operation). Kalle On Saturday, March 22, 2014, Kalle Korhonen kalle.o.korho...@gmail.com wrote: On Sat, Mar 22, 2014 at 8:47 AM, Bob Harner bobhar...@gmail.com javascript:; wrote: True, but that particular visibility change will need to be repeated each time ASM is upgraded in Tapestry, if I'm understanding what you did. You cannot know that. It depends solely on how ASM is changed. Kalle On Mar 22, 2014 11:13 AM, Kalle Korhonen kalle.o.korho...@gmail.com wrote: On Sat, Mar 22, 2014 at 3:56 AM, Bob Harner bobhar...@gmail.com wrote: Kalle, I guess there would be another step? 7) Also made a single change to ASM source, promoted visibility of AnnotationNode.accept from package private to public so I didn't have change to plastic (to instantiate AnnotationNode) ... Or is that what you meant by step 6? Yes, that's what's included in the step 6. Really, we can't describe exact steps to incorporate codebase with unknown future changes. Kalle On Mar 21, 2014 12:40 PM, Kalle Korhonen kalle.o.korho...@gmail.com wrote: On Fri, Mar 21, 2014 at 3:57 AM, Bob Harner bobhar...@gmail.com wrote: Kalle, can you list the steps you went through to do this? I'd like to document the process, since it isn't simply a matter of incrementing the version of a dependency. Sure. It was very simple actually: 1) Have plastic module open on your favorite IDE 2) Download an asm source release from http://forge.ow2.org/projects/asm/ 3) untar the asm source, move the source tree (starting from org) next to plastic/src/external/java 4) delete the existing package org.apache.tapestry5.internal.plastic.asm 5) use the IDE to rename the org.objectweb.asm package to org.apache.tapestry5.internal.plastic.asm 6) fix compilation errors Naturally, your IDE needs to be smart enough to refactor the package names in the class files accordingly. Kalle On Mar 20, 2014 4:16 PM, Kalle Korhonen kalle.o.korho...@gmail.com wrote: Sure, no problem. We still need it released but that might have to wait till 5.4 GA release. Easy enough for those who need it to build it themselves though. Kalle On Thu, Mar 20, 2014 at 1:03 PM, Joachim Van der Auwera li...@progs.be wrote: THanks Kalle for doing this. Kind regards, Joachim On 03/18/2014 08:32 PM, Joachim Van der Auwera wrote: Java8 is now officially available. ASM 5.0 has also been released (see http://forge.ow2.org/forum/ forum.php?forum_id=2302) -- 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
Re: Discussion on AJAX requests need even more than a context?
Maybe L (which contains F) just needs to use: @Persist(cookie) private String filterValue Downsides might be it's not bookmarkable, and the client-side state persists beyond the page. On 26/03/2014, at 11:47 AM, Geoff Callender wrote: Sorry, but I've read the solution below 10 times now and it hurts my head every time! :-) I don't see how it gets around the problem that when E is AJAX-submitted, the server-side elements can find ways to prod L to refresh but they cannot tell L the current value of F. The server-side doesn't know the current value of F, unless we make the server-side stateful (no thank you), or we somehow include the value of F in every request. What I'm aiming for is a solution which works declaratively. You know, where you don't see the plumbing. Just like @ActivationRequestParameter, but at the component level. On 21/03/2014, at 2:35 AM, Lance Java wrote: I'm imagining the pub sub would work like... public class L { @Inject private Publisher publisher; @Inject private Block someBlock; /** * Fired when the select menu changes */ public Object onFilterChange(Entity entity) { publisher.publish(changeEntity, entity); return someBlock; } } public class E { @Inject private AjaxResponseRenderer ajaxResponseRenderer; @Inject private Zone someZone; @Property private Entity entity; @Subscribe(topic=changeEntity) void subscribeChangeEntity(Entity entity) { this.entity = entity; ajaxResponseRenderer.addRender(someZone; } } - To unsubscribe, e-mail: dev-unsubscr...@tapestry.apache.org For additional commands, e-mail: dev-h...@tapestry.apache.org