Re: [ANNOUNCE] Tapestry 5.3.0
Great !! Congrats everyone :) And a big thank you for the developers ;) On Fri, Jun 24, 2011 at 10:30 PM, Howard Lewis Ship hls...@gmail.comwrote: Apache Tapestry version 5.3.0 is now available. This is the first alpha release of Tapestry 5.3. It is designed to be a drop-in replacement for Tapestry 5.2, adding new components and features, with lower memory utilization, and event faster startup. However, as many deprecated classes have been removed, you should certainly check the release notes [http://tapestry.apache.org/release-notes-53.html]. We are quite interested in any upgrade problems you may encounter ... previewing new releases and reporting back is a terrific way to contribute back to Tapestry! Tapestry is available for download [http://tapestry.apache.org/download.html] in source format, and available via the central Maven repository: dependency groupIdorg.apache.tapestry/groupId artifactIdtapestry-core/artifactId version5.3.0/version /dependency -- 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 -- *Regards,* *Muhammad Gelbana Java Developer*
Change how beaneditor structures it's fields
Hello everyone, I've been searching for a while but I'm facing difficulties solving this situation. I have a page. This page contains a form component, then this form embeds multiple beaneditor components. I need to change how a specific beaneditor component of these renders it's fields. I found that the beaneditor puts each of it's input fields and label in one div element which causes the fields to be rendered vertically. I just need to put some fields in one div element so that they are rendered next to each other. Here is my page's code: public class ConfigureTclTest { @Component private Form configureTclTest; @Property private boolean overridePortParameters; @Component private BeanEditor commonTestDataEditor; //The editor can work without this declaration. But this is my current version. @Property private CommonTestData commonTestData; . . . } My tml file: t:form t:id=configureTclTest h2Chassis information/h2 div class=t-beaneditor-row label for=overridePortParametersOverride/label t:checkbox t:id=overridePortParameters / /div t:beaneditor t:id=commonTestDataEditor object=commonTestData exclude=chassisIp t:parameter name=ipAddress t:label for=ipAddress / t:textfield t:id=ipAddress value=${message:default.ipAddress} disabled=true / /t:parameter t:parameter name=prefix t:label for=prefix / t:textfield t:id=prefix value=${message:default.prefix} disabled=true / /t:parameter /t:beaneditor . . . So how should I intercept a specific event for a beaneditor located as mentioned above ? According to my understanding of event bubbling, should I handle event for the form component instead ? Moreover, as I understand that at some point I'll use the MarkupWriter interface. I have no clear idea about how it behaves. Am I clear explaining this ? If the needed is mentioned somewhere, links will be enough. Thanks a lot in advance :) -- *Regards,* *Muhammad Gelbana Java Developer*
Re: last page visited
May be a primitive solution like, when a page is attached, it sets a session variable unique to the page ? On Thu, Jun 23, 2011 at 3:40 PM, Taha Hafeez tawus.tapes...@gmail.comwrote: Hi Take a look at https://github.com/argoyle/tapestry-breadcrumbs regards Taha On Thu, Jun 23, 2011 at 7:07 PM, leandroaisp...@gmail.com wrote: Hi all! I want to know what is the best way to obtain the last visited page ? For example... I am navigating page A and when I click in a link I go to a page B. When I am in B I want to know that before being here I was in page A. My tapestry version is 5.1.0.5 and i can't migrate the project to a new one because of some dependencies. Thanks in advance! Leandro. -- *Regards,* *Muhammad Gelbana Java Developer*
Tapestry offline documentation
Is it possible to have an offline version for tapestry documentation ? -- *Regards,* *Muhammad Gelbana Java Developer*
Re: Property Edit Blocks
Hi all, I learned some from the discussion here but I have an issue opposite to what Greg faced. When I remove the translate component parameter, I get exceptions that the translate parameter could not be null ! This is my container page java file: package com.skycomm.tclagent.pages.editors; @SuppressWarnings(unused) public class POP3ParametersPage { @Property @Environmental private PropertyEditContext context; @Component(parameters = { value=context.propertyValue, label=prop:context.label, clientId=prop:context.propertyId, annotationProvider=context/*, translate=prop:gatewayTranslator*/}) private TextField gateway; public POP3TestData getPop3() { return (POP3TestData) this.context.getPropertyValue(); } } page tml file: t:block id=pop3 xmlns:t= http://tapestry.apache.org/schema/tapestry_5_1_0.xsd; xmlns:p=tapestry:parameter t:label for=gateway/ t:textfield t:id=gateway size=10 t:value=pop3.gateway/ /t:block Module contributions: public static void contributeDefaultDataTypeAnalyzer(MappedConfigurationClass, String configuration) { configuration.add(POP3TestData.class, pop3Parameters); } public static void contributeBeanBlockSource(ConfigurationBeanBlockContribution configuration) { configuration.add(new EditBlockContribution(pop3Parameters, editors/POP3ParametersPage, pop3)); } I should add more fields in the future but I'm just trying to get this one work (i.e. gateway) I also find that translators will aim to display and parse whole objects through 1 field which is not my target here. I need to display all object variables into separate fields. Also is there a way to automatically display an object un fields just like beaneditor does usually ? Thank you for your time :) On Fri, Jun 3, 2011 at 6:45 AM, Greg Pagendam-Turner g...@liftyourgame.comwrote: Thanks Thiago, I actually do have a DataTypeAnalyzer in my AppModule public static void contributeDefaultDataTypeAnalyzer(MappedConfigurationClass, String configuration) { configuration.add(PersonName.class, personname); } Looks like if I take out the translator references everything works correctly. Regards, Greg On 3/06/2011 12:48 AM, Thiago H. de Paula Figueiredo wrote: On Thu, 02 Jun 2011 04:31:55 -0300, Greg Pagendam-Turner g...@liftyourgame.com wrote: Hi all, Hi! I've also written a translator: Why? A translator is used when you want to edit a property which isn't a String with one text field, and this isn't your case. Your code is missing a DataTypeAnalyzer to define a type for PersonName. Otherwise, Tapestry will not use your edition block. - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- *Regards,* *Muhammad Gelbana Java Developer*
Re: [ANN] JumpStart 5.2.1 released
You guys rock!..thanks a lot :) On Tue, May 10, 2011 at 11:21 AM, Geoff Callender geoff.callender.jumpst...@gmail.com wrote: Thanks for the note about the Tapestry 5 Caffe link not working. I'll fix it soon. It should be: http://tapestry5.ideascale.com/a/ideafactory.do?id=3004mode=recentdiscussionFilter=byidsdiscussionID=9482 Geoff On 10/05/2011, at 12:19 AM, Taha Hafeez wrote: Thanks, I use it as a reference Btw, this link is not working http://tapestry5.ideascale.com/akira/ideafactory.do?discussionID=9482 regards Taha On Mon, May 9, 2011 at 7:24 PM, Stephan Windmüller stephan.windmuel...@tu-dortmund.de wrote: On 09.05.2011 15:24, Geoff Callender wrote: JumpStart 5.2.1 is up and running. Thank you! JumpStart has always been a great help when working with Tapestry, especially for starters. * Uses the latest Tomcat, 6.0.32. Still supports 5.5.27. What about Tomcat 7.0.12? - Stephan - 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 -- *Regards,* *Muhammad Gelbana Java Developer*
Re: Leaving the tapestry community
I wish I had a flexible employer like you do :( Good luck with your new job :) On Mon, Mar 28, 2011 at 3:13 PM, Igor Drobiazko igor.drobia...@gmail.comwrote: Good luck and hope to see you soon. On Mon, Mar 28, 2011 at 2:50 PM, Inge Solvoll inge.tapes...@gmail.com wrote: Hi! In a couple of weeks, I'm leaving my current employer. You probably won't hear from me for a while, since my new employer isn't into web development yet. But they might be soon. In that case, I hope to bring T5 to the table like I have done in my current job. If I manage to do that, it's a win-win-win situation: Me, my employer and the tapestry community wins. Wish me luck :) -- Best regards, Igor Drobiazko http://tapestry5.de -- *Regards,* *Muhammad Gelbana Java Developer*
Re: i give up
Congrats :) I'd say that tapestry is not easy to be a second nature to anyone..but it's developers ! First you have to understand it well because it's almost like nothing you have been seen before with respect to productivity and programming models (did I use the term right ?) Anyway, stay on it. Follow the documentation mentioned above..and this one too http://people.apache.org/~uli/tapestry-site/index.html, Once I looked at the FAQ page, man it took a breath away !!..Felt like looking at a gold mine !! At last someone is speaking about the difference between pages and components, different @Inject annotation variances...and the mystery called Environmental etc, You will love it. I haven't tried much web frameworks but Tapestry is lovely. Only if it had the amount of developers working on it full time, we'd have it just the way we'd like a web framework to be soon enough to end the frustration. But sadly they are all almost busy with their jobs, and no one can blame them for that. Stay on the list, anyone will surely help if he could :) On Sat, Nov 6, 2010 at 8:40 PM, Josh Kamau joshnet2...@gmail.com wrote: Thanks guys, My menubar thing worked. Am proceeding very well now and am liking it. I am planning on starting a blog and sharing my lessons with the world. regards. On Sat, Nov 6, 2010 at 1:22 PM, Thiago H. de Paula Figueiredo thiag...@gmail.com wrote: On Sat, 06 Nov 2010 12:55:09 -0200, Josh Kamau joshnet2...@gmail.com wrote: Thiago, Hi! I am using Eclipse with maven and running it via mvn jetty:run. I am fine with restarting jetty when i make a change so i dont care much about enabling live reloading. You'll learn and develop way faster with live class reloading. There's no reason for not using it (and many for using). Are you running jetty:run in the command line or using m2eclipse? If under m2eclipse, there's one gotcha: it configures Eclipse such that src/main/resources isn't copied to target/classes autimatically. How is your package structure? Where are you putting your files? I guess Tapestry isn't finding your component template due to it being in the wrong place or not being included in the classpath. Component templates should be in the same package as the corresponding class and have the same name, case sensitive. -- 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 -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Tapestry for mobile devices
Hello All, Sadly I don't know much about web programming for mobile devices. The only thing I know is that mobile devices uses different protocol to browse the web. But I find modern devices using usual protocols such as http based on wireless application protocol. So say I need to make a web application for an android phone or an application written in j2me. What changes do I need to do ? what topics should I read about ? Thank you all in advance. -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: Tapestry for mobile devices
Thank you so much Thiago :) On Thu, Nov 4, 2010 at 8:26 PM, Thiago H. de Paula Figueiredo thiag...@gmail.com wrote: On Thu, 04 Nov 2010 15:06:45 -0200, Muhammad Mohsen m.gelb...@gmail.com wrote: Hello All, Hi! Sadly I don't know much about web programming for mobile devices. The only thing I know is that mobile devices uses different protocol to browse the web. That was true many, many years ago . . . You're talking about WAP. Almost nobody uses it anymore for a long time. Even Opera Mini, a browser implemented in Java ME that works in low-end devices, is able to browse most sites designed for desktop browsers. But I find modern devices using usual protocols such as http based on wireless application protocol. So say I need to make a web application for an android phone or an application written in j2me. What changes do I need to do ? None needed, maybe some tweaks needed for the smaller displays found in mobile devices. -- 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 -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: Access to a component through an URL
If you need to access ComponentA from ComponenB. And PageA contains ComponentB. Then add ComponentA to ComponentB (@InjectComponent). And pass a parameter to your page to invoke ComponentB in a way that would render ComponentA. Did I answer your question ? Is it a matter of organization or how-to ? On Tue, Nov 2, 2010 at 8:13 PM, Kado juan.a...@condortech.com.ar wrote: Hi, I am using some components for showing info in my webApp. Right now I am trying to access to some of these components by a direct URL (so I can access to this components from other webs, other processes and so on) and I don't know how to do this. As we try to re-use as much as we can in my development team, we are working with a layout that includes different components. But now I am trying to access to one of this components not from the layout I will need to create a new page that contains the component and have the url of this page? Or is any other option to access directly to the component without creating a page for it? Can somebody help me with this problem? Thanks! - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: Access to a component through an URL
I don't think I can help you much, I haven't tackled such functionality yet. But check this page (I think this will solve it, but sadly there is no example on the page, may be you can google or search Google code for the annotation and see how it's utilized): http://tapestryjava.blogspot.com/2010/06/tapestry-52-improved-query-parameter.html http://tapestry.apache.org/tapestry5.2-dev/guide/pagenav.htmlAnd this : http://tapestry.apache.org/tapestry5.2-dev/guide/pagenav.html I'm not sure how can you use the parameter you got to make your components render in different ways ! I only did that using ajax for now ! Assuming you already got your parameter from the page, does that answer you question ? If you can proceed from here, please tell me how will you do it. http://tapestry.apache.org/tapestry5.2-dev/guide/pagenav.htmlSorry I couldn't help much. On Tue, Nov 2, 2010 at 8:38 PM, Kado juan.a...@condortech.com.ar wrote: Thanks for the quick answer, Is a matter of how-to. What we are really needing is an URL to access to a component. In this case the component is a page in the package components. Is this possible? Thanks! On 11/02/2010 03:18 PM, Muhammad Mohsen wrote: If you need to access ComponentA from ComponenB. And PageA contains ComponentB. Then add ComponentA to ComponentB (@InjectComponent). And pass a parameter to your page to invoke ComponentB in a way that would render ComponentA. Did I answer your question ? Is it a matter of organization or how-to ? On Tue, Nov 2, 2010 at 8:13 PM, Kadojuan.a...@condortech.com.ar wrote: Hi, I am using some components for showing info in my webApp. Right now I am trying to access to some of these components by a direct URL (so I can access to this components from other webs, other processes and so on) and I don't know how to do this. As we try to re-use as much as we can in my development team, we are working with a layout that includes different components. But now I am trying to access to one of this components not from the layout I will need to create a new page that contains the component and have the url of this page? Or is any other option to access directly to the component without creating a page for it? Can somebody help me with this problem? Thanks! - 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 -- *Regards,* *Muhammad Gelbana Java Software Programmer*
[T5.2] Grid component manipulation
Hello everyone, My main objective is to list complex data in rows with the paging feature implemented. I can think of other ways to list rows with complex data but the paging feature is already implemented in the Grid component and I don't want to reinvent the wheel so I'm thinking of using the Grid component. Is there a way I can override the Grid component to use divs instead of tables ? And to hide the header shown. Thanks in advance. -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: [T5.2] Grid component manipulation
It's a debate, whether to use tables or divs. Check this page: http://en.wikipedia.org/wiki/Tableless_web_design http://en.wikipedia.org/wiki/Tableless_web_designSearch for: This causes a number of problems Also it's sometimes a client request that the web application becomes table-less and only DIVs are to be used. As I can't find a firm evidence that either is better or if there is even a difference, I can't convince my client other wise. On Mon, Nov 1, 2010 at 4:01 PM, Thiago H. de Paula Figueiredo thiag...@gmail.com wrote: On Mon, 01 Nov 2010 11:54:17 -0200, Muhammad Mohsen m.gelb...@gmail.com wrote: Hello everyone, Hi! Is there a way I can override the Grid component to use divs instead of tables ? I don't think so. Why do you want that? And to hide the header shown. You can CSS to hide it from view or use DOM rewriting to remove it from the output. -- 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 -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: [T5.2] Grid component manipulation
I have no considerable designing experience to argue with your statement. It's just that sometimes a client would insist on having a table-less application. Unless I can't override the Grid to render using tables, I can't accept the job. That's all :) I wish the mailing list is always active is its since the last hour or so :D On Mon, Nov 1, 2010 at 4:31 PM, Juan E. Maya maya.j...@gmail.com wrote: Muhammad, as the article points out, tableless design is: ...a philosophy eschewing the use of HTML tables for page layout control purposes. Tables have a very good purpose in HTML they should be used to display tabular data (A grid is exactly that). The problem is that 10 years ago tables were used to create the layout of the page causing the problems you point out. if you keep reading the article they mention the following. ..while others are now afraid to introduce a simple HTML table even where it makes good sense,[3] some erring by the overuse of span and div elements, perhaps even with table-like rules applied to them using CSS.[4] On Mon, Nov 1, 2010 at 3:23 PM, Muhammad Mohsen m.gelb...@gmail.com wrote: It's a debate, whether to use tables or divs. Check this page: http://en.wikipedia.org/wiki/Tableless_web_design http://en.wikipedia.org/wiki/Tableless_web_designSearch for: This causes a number of problems Also it's sometimes a client request that the web application becomes table-less and only DIVs are to be used. As I can't find a firm evidence that either is better or if there is even a difference, I can't convince my client other wise. On Mon, Nov 1, 2010 at 4:01 PM, Thiago H. de Paula Figueiredo thiag...@gmail.com wrote: On Mon, 01 Nov 2010 11:54:17 -0200, Muhammad Mohsen m.gelb...@gmail.com wrote: Hello everyone, Hi! Is there a way I can override the Grid component to use divs instead of tables ? I don't think so. Why do you want that? And to hide the header shown. You can CSS to hide it from view or use DOM rewriting to remove it from the output. -- 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 -- *Regards,* *Muhammad Gelbana Java Software Programmer* - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: [Tapestry Central] Tapestry 5.2.2
That's great ! But where should I find the link for the release notes ? it's not on tapestry.apache.com isn't it ? On Mon, Nov 1, 2010 at 10:01 PM, Howard hls...@gmail.com wrote: ... and the latest version of Tapestry, 5.2.2, is now available. This is the second beta release for Tapestry 5.2, addressing a few bugs in 5.2.1, and adding a couple of minor non-disruptive improvements ... read about it in the release notes. Tapestry 5.2.2 is available for download, or via Maven: dependency groupIdorg.apache.tapestry/groupId artifactIdtapestry-core/artifactId version5.2.2/version /dependency I expect some minor issues will be addressed in Tapestry 5.2.3. Expect that in a week or so. -- Posted By Howard to Tapestry Central at 11/01/2010 01:01:00 PM -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: inject component from parent component
This is an old thread but REALLY thank you all for the concepts you demonstrated and specially *Josh* for the code to clear everything out :) On Wed, Aug 11, 2010 at 3:32 AM, Geoff Callender geoff.callender.jumpst...@gmail.com wrote: It's best that the component knows nothing of what's around it. Instead, have it trigger an event to bubble up to its container and let the container decide what to do with it. Perhaps this example will help? http://jumpstart.doublenegative.com.au/jumpstart/examples/ajaxcomponentscrud Geoff On 11/08/2010, at 2:26 AM, Christian Koller wrote: Hi I'm not sure how I can pass an embedded zone in the template as a parameter. I tried for several hours but wasn't able to do that. I can inject the zone to the page but then, how can I handle the zone down to the sub component as parameter? I know about the publish params and inherit params, but it does not work with a zone as parameter or maybe I do something wrong. I'm considering to put the zone to the session as a sso and then grab for it in the needed sub component. What do you think about this solution? On 08.08.2010, at 18:33, Josh Canfield wrote: It's generally not considered good design for a component to have knowledge of the design of it's container. This would be a universal design principle, not limited to tapestry. So if all you want to do is update a zone then couldn't you just pass the zone or zone id as a parameter to your component? -- Josh On Aug 8, 2010, at 7:49 AM, Christian Koller christian.kol...@net-m.ch wrote: In an inner component I handle an ajax request from an action link and want to update a zone in a outer component. As a work around I use the ComponentSource like: Object onActionFromMark(long wishedStartTime) { this.wishedStartTime = wishedStartTime; CalendarComponent cal = (CalendarComponent) componentSource.getComponent(AppointmentPage:calendarCollection.cal0); return cal; Unfortunately I have to give the full id here with page name and so on. Is there no way to get an outer component to update a zone there? On 08.08.2010, at 16:37, Igor Drobiazko wrote: Nope, this is not possible. What are you trying to do? On Sun, Aug 8, 2010 at 4:28 PM, Christian Koller christian.kol...@net-m.chwrote: Hi With the annotation @Component I can inject components which are defined in the component's template, for example: @Component(id=myComponent) private ActionLink link; Is there a way to inject a component from the parent component? Something like: @Component(id=../myComponent) private ActionLink mark; Thank you chris -- Best regards, Igor Drobiazko http://tapestry5.de Christian Koller Sofwareentwickler net mobile Schweiz AG Seestrasse 45 CH ñ 8702 Zollikon Tel: + 41 (0) 44 918 99 99 Fax: + 41 (0) 44 918 99 98 Direkt: + 41 (0) 44 918 99 72 Mail: christian.kol...@net-m.ch Web: www.net-m.ch - 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 Christian Koller Sofwareentwickler net mobile Schweiz AG Seestrasse 45 CH ñ 8702 Zollikon Tel: + 41 (0) 44 918 99 99 Fax: + 41 (0) 44 918 99 98 Direkt: + 41 (0) 44 918 99 72 Mail: christian.kol...@net-m.ch Web: www.net-m.ch - 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 -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: Updating zones from a page that uses a layout
Thank you Mark for replying. That's not my case. The layout component will have to refer to components defined in it's tml file. Anyway I tried that yesterday, still an error message appeared saying that Start doesn't have handlers for the fired events. I found this page http://wiki.apache.org/tapestry/Tapestry5SimpleAndPowerfulLayouts http://wiki.apache.org/tapestry/Tapestry5SimpleAndPowerfulLayoutsWhich made me think, why am I using layouts ? It's more convincing to me that layouts are best for pages utilizing a layout component and that's it. My design is more about components. So far I'm only using a single page and didn't benefit from the layout thing, I implemented something I don't need, guess I was just trying to explore tapestry. I'll implement the idea in that page and get back to you with any good info I reach. Thank you very much for your time :) On Sun, Oct 31, 2010 at 12:53 PM, Mats Andersson mats.anders...@ronsoft.sewrote: Hi, Why not have everything in the layout component, both event handlers and zone? An example: layout.tml: ... t:zone t:id=testzone t:eventlink event=updatetestzone zone=testzoneupdate time/t:eventlink ${CurrentTime} /t:zone .. Layout.java: ... @InjectComponent private Zone testzone; public Date getCurrentTime() { return new Date(); } public Object onUpdatetestzone() { return testzone.getBody(); } ... Best Regards Mats Mats Andersson Ronsoft AB - Fridhemsvägen 8 - 372 25 Ronneby Tel. 073-368 79 82 http://www.ronsoft.se Muhammad Mohsen skrev 2010-10-31 01:43: Hello everyone, I have a layout component, used by a page called Start. This layout component has a zone component in it that I intend to load components into it using ajax. The links supposed to initiate such update is in the layout component. But the link events must be handled by the page utilizing the layout component (after a search on google). So after I added the following method to the Start page: e.g. onActionFromLayout(){ ... } I couldn't refer to Blocks defined in the layout component from the Start page, because simply they doesn't exist in the Start page's tml file ! I can put those components in the Start page .tml file instead, but then I'll have to redefine all the components I could load by ajax into each other. As any component lead to the other one ! Generally, how can I tackle such organization issue ? May be you guys know some other easier\more efficient way to do that. Please find attached a picture to elaborate my case. Thank you all for your time. -- /Regards,/ /Muhammad Gelbana Java Software Programmer/ - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Updating zones from a page that uses a layout
Hello everyone, I have a layout component, used by a page called Start. This layout component has a zone component in it that I intend to load components into it using ajax. The links supposed to initiate such update is in the layout component. But the link events must be handled by the page utilizing the layout component (after a search on google). So after I added the following method to the Start page: e.g. onActionFromLayout(){ ... } I couldn't refer to Blocks defined in the layout component from the Start page, because simply they doesn't exist in the Start page's tml file ! I can put those components in the Start page .tml file instead, but then I'll have to redefine all the components I could load by ajax into each other. As any component lead to the other one ! Generally, how can I tackle such organization issue ? May be you guys know some other easier\more efficient way to do that. Please find attached a picture to elaborate my case. Thank you all for your time. -- *Regards,* *Muhammad Gelbana Java Software Programmer* - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
[tapestry5-hotel-booking] missing package
This is really wierd ! I can' find this package ! *com.tap5.hotelbooking.entities* * * Is there a way through which I can check-out the code using a cvs or a svn client ? I can't find a url for either clients ! -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: [tapestry5-hotel-booking] missing package
No need to be. Enough effort from your side already :) On Fri, Oct 29, 2010 at 4:47 PM, Christophe Cordenier christophe.corden...@gmail.com wrote: Committed ! sorry 2010/10/29 Muhammad Mohsen m.gelb...@gmail.com This is really wierd ! I can' find this package ! *com.tap5.hotelbooking.entities* * * Is there a way through which I can check-out the code using a cvs or a svn client ? I can't find a url for either clients ! -- *Regards,* *Muhammad Gelbana Java Software Programmer* -- Regards, Christophe Cordenier. Committer on Apache Tapestry 5 Co-creator of wooki @wookicentral.com -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: [TapestryHotelBooking Demo]AjaxLoader component questions
I just solved id :) I debugged through tapestry javascript and found that the link loading the zone has an onclick JS code saying something like: javascript:return Tapestry.waitForPage(*someting*) It's built in code so we don't actually need it. Now this method returns true whenever the variable Tapestry.pageLoaded is true. Now here comes the part where I can only assume what happened, so I'll leave the explanation to the gurus :) I think that the function kept returning true, which invokes the onclick handler for that link, which goes back into tapestry.waitForPage method and into an endless loop which made numerous backend calls...and that's just guessing :D So i changed the even from trigger_zone_update_event to zone_updated_event which I suppose makes more sense. The highlighted part here should be replaced by *ZONE_UPDATED_EVENT*. } else if (trigger.tagName == A) { //I added this condition, it's a personal flavor, I like strict conditions trigger.observeAction(Tapestry.*TRIGGER_ZONE_UPDATE_EVENT*, function() { $(params.loader).show(); }); } May be it's just my project that needs such modification, I'm not sure. But if it's a general case then I think it should be committed for everyone's benefit. Thanks for everyone who tried to help :) On Thu, Oct 28, 2010 at 9:03 PM, Muhammad Mohsen m.gelb...@gmail.comwrote: Hi All, Yet another great contribution and also a great component to facniate me. Thank you all for the effort done and for the tapestry team to create such a dynamic framework :) Now to the component. Here it is for fast reference: (I removed the package declaration and the imports) /** * Append a loader icon to wait for zone update completion. */ public class AjaxLoader { /** * The class of the element that shows the ajax loader image */ @Parameter(value = loading, defaultPrefix = BindingConstants.LITERAL) private String loaderClass; /** * The element to render. The default is derived from the component template. */ @Parameter(defaultPrefix = BindingConstants.LITERAL) private String element; /** * The zone to observe. */ @Parameter(required = true, allowNull = false, defaultPrefix = BindingConstants.LITERAL) private String zone; /** * The id of the element that triggers the zone update. */ @Parameter(required = true, allowNull = false, defaultPrefix = BindingConstants.LITERAL) private String trigger; @Inject private JavaScriptSupport javascriptSupport; @Inject private ComponentResources resources; private String loader; String defaultElement() { return resources.getElementName(div); } @BeginRender void initAjaxLoader(MarkupWriter writer) { loader = javascriptSupport.allocateClientId(loader); JSONObject data = new JSONObject(); data.put(zone, zone); data.put(trigger, trigger); data.put(loader, loader); System.out.println(data); javascriptSupport.addInitializerCall(InitializationPriority.LATE, initAjaxLoader, data); } @AfterRender void writeAjaxLoader(MarkupWriter writer) { writer.element(element, id, loader, class, this.loaderClass, style, display:none;); writer.end(); } } * After porting this component to my application, I applied it to a link. The image is shown and hidden well. But I found out that the method the link calls, is being called many times. The JS console says what's supposed to mean that the call stack exploded due to numerous method calls. * I'm not sure If I fully understand the @Environmental annotation but shouldn't JavaScriptSupport here be annotated as environmental ? * About the defaultElement() method. After reading the documentation I understood it's supposed to return the tag name of the component. In our case it's span, div is simply ignored. a.who calls this method, when and why ? b.why did we provide div ? In case the component exists solely without a container ? Although I can't currently imagine if that's possible, may be it is. Thank you for your time :) -- *Regards,* *Muhammad Gelbana Java Software Programmer* -- *Regards,* *Muhammad Gelbana Java Software Programmer*
[TapestryHotelBooking Demo]AjaxLoader component questions
Hi All, Yet another great contribution and also a great component to facniate me. Thank you all for the effort done and for the tapestry team to create such a dynamic framework :) Now to the component. Here it is for fast reference: (I removed the package declaration and the imports) /** * Append a loader icon to wait for zone update completion. */ public class AjaxLoader { /** * The class of the element that shows the ajax loader image */ @Parameter(value = loading, defaultPrefix = BindingConstants.LITERAL) private String loaderClass; /** * The element to render. The default is derived from the component template. */ @Parameter(defaultPrefix = BindingConstants.LITERAL) private String element; /** * The zone to observe. */ @Parameter(required = true, allowNull = false, defaultPrefix = BindingConstants.LITERAL) private String zone; /** * The id of the element that triggers the zone update. */ @Parameter(required = true, allowNull = false, defaultPrefix = BindingConstants.LITERAL) private String trigger; @Inject private JavaScriptSupport javascriptSupport; @Inject private ComponentResources resources; private String loader; String defaultElement() { return resources.getElementName(div); } @BeginRender void initAjaxLoader(MarkupWriter writer) { loader = javascriptSupport.allocateClientId(loader); JSONObject data = new JSONObject(); data.put(zone, zone); data.put(trigger, trigger); data.put(loader, loader); System.out.println(data); javascriptSupport.addInitializerCall(InitializationPriority.LATE, initAjaxLoader, data); } @AfterRender void writeAjaxLoader(MarkupWriter writer) { writer.element(element, id, loader, class, this.loaderClass, style, display:none;); writer.end(); } } * After porting this component to my application, I applied it to a link. The image is shown and hidden well. But I found out that the method the link calls, is being called many times. The JS console says what's supposed to mean that the call stack exploded due to numerous method calls. * I'm not sure If I fully understand the @Environmental annotation but shouldn't JavaScriptSupport here be annotated as environmental ? * About the defaultElement() method. After reading the documentation I understood it's supposed to return the tag name of the component. In our case it's span, div is simply ignored. a.who calls this method, when and why ? b.why did we provide div ? In case the component exists solely without a container ? Although I can't currently imagine if that's possible, may be it is. Thank you for your time :) -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: Persistent data issue
I'm not sure of what you need but I think you need this annotation: @PageResethttp://tapestry.apache.org/tapestry5.2-dev/apidocs/org/apache/tapestry5/annotations/PageReset.html http://tapestry.apache.org/tapestry5.2-dev/apidocs/org/apache/tapestry5/annotations/PageReset.htmlCheck this page for more info: http://tapestry.apache.org/tapestry5.2-dev/guide/lifecycle.html On Fri, Oct 29, 2010 at 2:27 AM, Baishan Peng b.p...@gns.cri.nz wrote: Hi All, I have an T5 application like this: http://www.crazymcphee.net/x/2009/08/26/tapestry-5-web-framework/ public class Persons { @Property @Persist private List persons; @Property @Persist private String searchTerm; Object onSubmitFromSearch() { persons = personService.findPersons(searchTerm); return this; } }I want to return the same page with the search data when the search form is submitted, so a persistent property for the persons List is needed. My problem is: when the page has some search results for persons, it doesn't disapear when the page is reloaded. I have tried to change the persistent strategy to @Persist (flash), but it brings another problem: when the search results are big and need to be displayed on multiple pages, when the next page is clicked, the resultd disapear. I need to manually clear the search data when the page is refreshed (instead of submitted), but not sure what method to use in the page navigation cycle. Please help. Thanks Sige Notice: This email and any attachments are confidential. If received in error please destroy and immediately notify us. Do not copy or disclose the contents. - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: change session id after login
Excuse me, I understand that I should not invalidate the session from the directly from the httpsession object. But how can I access the httpsession object through tapestry in the first place ? Or the mentioned Session object ? A link to the page discussing this topic would be great. Thank you in advance. On Tue, Oct 26, 2010 at 9:10 AM, Markus Joschko markus.josc...@gmail.comwrote: Do you know any webframework that allows that? We recently had the same requirement but finally went the route to use an extra id in a https only cookie that was set during login. Not as nice as using the container supported session id but it works fine. Markus On Mon, Oct 25, 2010 at 5:18 PM, Kalle Korhonen kalle.o.korho...@gmail.com wrote: But typically, you'd just invalidate the session which of course forces a new session id. Kalle On Mon, Oct 25, 2010 at 12:21 AM, Mike Oestereter mike.oestere...@gmail.com wrote: Hi In my mind it is not a peculiar requirement but a basic security 101 requirement. Session ID should change after login, after logoff and after reauth (for sensitive operations). On Wed, Oct 20, 2010 at 1:51 AM, Kalle Korhonen kalle.o.korho...@gmail.com wrote: That's a rather peculiar requirement. Sessions are semi-managed by the container and I don't know of a container that would allow you to do that. If you used Shiro in native session mode, you could probably change the id but even then, you'd need to cast and use the implementation classes directly. Kalle On Tue, Oct 19, 2010 at 2:40 PM, Mike Oestereter mike.oestere...@gmail.com wrote: The problem is that I don't want to invalidate the session from an application point of view. After successful login I want to store details about the authenticated user in the user session. I just want to kill the existing cookie and associate a new (and different cookie) with the current session. On Mon, Oct 18, 2010 at 3:13 PM, Thiago H. de Paula Figueiredo thiag...@gmail.com wrote: Grabbing the session and invalidating directly does the trick but you have to be sure this occurs at the end of the request - otherwise Tapestry may try to reuse the session and because that has been invalidated you'd get exceptions. As long as you invalidate it through Tapestry (Session.invalidate()) instead of directly through HttpSession.invalidate(), I don't think exceptions will be thrown. - 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 - 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 - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: [T5.2] Beginner questions about modules, services injection and packages
Thank you Mark, That explained lots of things :). I want to make a separate module class just for the sake of code organization. May be It's wrong to create a module class for every service category(data access, business logic..etc). What do you think ? Is it ok performance and architecture wise ? I don't know how to specify a module in the web.xml, don't reckon I read anything about this ! About the auto loading, I thought it was meant only for the droppable jar feature. I think the @Submodule annotation will do the trick. Thanks a lot for your time :) On Sun, Oct 24, 2010 at 5:19 AM, Mark mark-li...@xeric.net wrote: On Sat, Oct 23, 2010 at 6:29 PM, Muhammad Mohsen m.gelb...@gmail.com wrote: 2.Modules I simply created a class, suffixed it Module so it ended up being named DataAccessModule. I added a public static void bind(ServiceBinder binder) { binder.bind(UserDAO.class, UserDAOImpl.class); } method just like my AppModule which works perfectly find. When I used the DataAccessModule to bind classes. As I @Inject them. They couldn't be resolved and I get a Class not found exception. This module is under the services package right beside AppModule.java So why aren't my services resolved ? I think you want to put: binder.bind(UserDAO.class, UserDAOImpl.class); in your AppModule file instead of creating a new DataAccessModule for it. You can bind a bunch of different things just by adding them to the list. If you take a look at your web.xml file you'll see there is a filter set to app and that is going to load the AppModule. If you are wanting it to be separate in order to create a drop in autoloading module, you need to check out the documents on creating autoloading modules. http://people.apache.org/~uli/tapestry-site/ioc-autoload.html If you want to have a separate module for DataAccess, you might be able to add it to the web.xml or possibly use the @SubModule annotation (see the section about IOC Autoloading). If you have an interface and its implementation that you want to load with the binder.bind command, I think you'd usually put them in the services package, but don't think it matters because you are going to explicitly tell Tapestry where to find them when you call bind in your AppModule file. Mark -- *Regards,* *Muhammad Gelbana Java Software Programmer*
[T5.2] Beginner questions about modules, services injection and packages
Hello everyone, I have a couple of questions I believe to be so primitive but I hope you don't mind answering them :) 1.Services I understand that sfl4j Logger class and ObjectLocator class are automatically available for services and they are considered resources. *http://tapestry.apache.org/tapestry5.2-dev/tapestry-ioc/module.html*http://tapestry.apache.org/tapestry5.2-dev/tapestry-ioc/module.html *, Caching Services section.* What I don't understand is, why when I inject Logger into a component. (@Inject) or even not using the annotation at all, it's resolves fine. But when I use it in a service, I have to use @InjectResource ? What are my options here in bother cases ? I know that If an interface has a single implemented, I could only declare an instance of that interface: private Logger logger; Even without an annotation nor autobinding. 2.Modules I simply created a class, suffixed it Module so it ended up being named DataAccessModule. I added a public static void bind(ServiceBinder binder) { binder.bind(UserDAO.class, UserDAOImpl.class); } method just like my AppModule which works perfectly find. When I used the DataAccessModule to bind classes. As I @Inject them. They couldn't be resolved and I get a Class not found exception. This module is under the services package right beside AppModule.java So why aren't my services resolved ? 3.Packages I understand that the pages packages is for pages, components is for components, base is basically for interfaces\abstract classes. But what if I wanted to add some business logic classes. For processing stuff, opening\closing connections. Classes that are used by services mainly. Where should I put them ? Like I did with slf4j Logger interface. It has only one implementer so no problem should occur and none did. When I just used the interface: private interface Logger logger; It was automatically resolved. So If I want to have my services automatically resolved based on the naming convention (InterfaceName.class for InterfaceNameImpl.class). Where should I put the interface and the impl class ? Please correct me if I mentioned any false information. Thanks in advance for your time :) -- *Regards,* *Muhammad Gelbana Java Software Programmer*
[T5.2] What security framework do you recommend ?
Hi All, I'm currently trying to decide what framework to use to secure my tapestry applications efficiently and easily. So I found tapestry-acegi and tynamo-security so far. Been reading some about tynamo's. May be someone could share his experience with either frameworks or securing tapestry applications in general. Regards. -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: [T5.2] What security framework do you recommend ?
Tynamo\Shiro must've left quite an impression on you guys :D Sounds like I was questioning the unquestionable lol Well the most I like about tynamo, is securing method calls. I'm really impressed by that. Maybe acegi supports that too but from the your messages, I think tynamo wins :) But have someone used ESAPI before ? OWASP's security framework ? I don't know a more professional organisation specialized in web applications security than OWASP. I guess their framework has much more potential than any other security framework. But i'll stick with tynamo for now, I need to get going with something and not analyze every single framework for every aspect of my application ! Your time is highly appreciated, thank you all. On Mon, Oct 18, 2010 at 11:39 PM, Borut Bolčina borut.bolc...@gmail.comwrote: +1 on that Very easy to use (read shiro documentation), very well integrated in Tapestry and the components are right there to use them. -Borut Another +1 for Kalle's responsiveness. 2010/10/18 Mark W. Shead mwsh...@gmail.com I've been very pleased with tynamo's tapestry-security module (which uses Shiro). One nice benefit is that it provides components you can use in your tapestry templates to do stuf like: t:security.hasRole role=user1role You have user1role /t:security.hasRole Other reasons I like tapestry-security: - Good documentation and examples in an actual tapestry application (http://tynamo.org/tapestry-security+guide) - Kalle is very helpful. - Leverages the tapestry approach of doing things. Your knowledge base of how tapestry works makes it easier to look at the source code of tapestry-security to understand something if necessary. (Anything that comes as a Tapestry module is likely to give you this benefit.) Mark - On Mon, Oct 18, 2010 at 10:52 AM, Muhammad Mohsen m.gelb...@gmail.com wrote: Hi All, I'm currently trying to decide what framework to use to secure my tapestry applications efficiently and easily. So I found tapestry-acegi and tynamo-security so far. Been reading some about tynamo's. May be someone could share his experience with either frameworks or securing tapestry applications in general. Regards. -- *Regards,* *Muhammad Gelbana Java Software Programmer* - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: As the type Retain is deprecated,what else can we use in tapestry5.2?
I'm sorry I'm just trying to understand more about tapestry. So you'll be using services because they are either global or request scoped, correct ? I didn't quit understand the @Retain annotation by the way that's why I was searching for old posts about it to see what have people been saying. On Sun, Aug 22, 2010 at 10:18 AM, phoenixwright cbx...@gmail.com wrote: Maybe the service methods are the best way -- View this message in context: http://tapestry.1045711.n5.nabble.com/As-the-type-Retain-is-deprecated-what-else-can-we-use-in-tapestry5-2-tp2643223p2643649.html Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: Component to format null values
Excuse me, I'm not questioning the functioning of your mentioned solution but where in the documentation is that ? I wanna read more about this. Thanks On Thu, Oct 14, 2010 at 10:21 AM, Jim O'Callaghan jc1000...@yahoo.co.ukwrote: I think you can use the format: t:formatnull value=${contract?.manager?.address?.city?.name} / ... where if any of the hierarchy is null is will stop trying to evaluate methods / properties on subordinates, avoiding your NPE. Regards, Jim. -Original Message- From: Dmitriy Vsekhvalnov [mailto:dvsekhval...@gmail.com] Sent: 14 October 2010 09:01 To: users@tapestry.apache.org Subject: Component to format null values Hello all, i'm looking to some approach to render property value or some default string if value is null. Something like: t:formatnull value=contract.name / I have no problem to implement such component,but i want this to work with property chains as well: t:formatnull value=contract.manager.address.city.name / where i want default string to be rendered, if any of intermediate values evaluated to null. Now i'm getting NPE. Is there are any service in tapestry which i can use for property expressions evaluation or any other ideas? Thanks. - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- *Regards,* *Muhammad Gelbana Java Software Programmer*
[T5.2] Zone loading progress icon
Hi all, I was wondering if anyone had implemented a way to inform the client that a zone is being updated whether by form submission or an ordinary link ? Something like a progress icon may be ? Just to be interactive with the client. -- Muhammad Gelbana Java Software Programmer
Re: [T5.2] Zone loading progress icon
I wouldn't have got a more comprehensive answer. Thank you all for your time :) On Mon, Oct 11, 2010 at 2:32 PM, Christophe Cordenier christophe.corden...@gmail.com wrote: Hi I did something like this by observing Tapestry Zone Events and CSS style http://github.com/ccordenier/tapestry5-hotel-booking/blob/master/src/main/java/com/tap5/hotelbooking/components/AjaxLoader.java http://github.com/ccordenier/tapestry5-hotel-booking/blob/master/src/main/webapp/static/hotel-booking.js 2010/10/11 Thiago H. de Paula Figueiredo thiag...@gmail.com: On Mon, 11 Oct 2010 12:23:51 -0300, Muhammad Mohsen m.gelb...@gmail.com wrote: Hi all, Hi! I was wondering if anyone had implemented a way to inform the client that a zone is being updated whether by form submission or an ordinary link ? Something like a progress icon may be ? I don't recall doing something like that, but that's what I'd use for it: http://api.prototypejs.org/ajax/ajax/responders/ -- 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 -- Regards, Christophe Cordenier. Committer on Apache Tapestry 5 Co-creator of wooki @wookicentral.com - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- *Regards,* *Muhammad Gelbana Java Software Programmer*
Re: [T5.2, Google Application Engine] Can't get a method to be realized (i.e. invoke a method)
Thanks for the advice you are totally correct. But this error also occurs on jetty. I made a mistake putting GAE in the subject. The error actually happens on both GAE and local jetty. I took my development locally to speed up the development process. Thank you for your time. On Tue, Oct 5, 2010 at 12:10 AM, Thiago H. de Paula Figueiredo thiag...@gmail.com wrote: On Mon, 04 Oct 2010 18:29:26 -0300, Muhammad Mohsen m.gelb...@gmail.com wrote: Hi All, Hi! I strongly suggest you to try to make your application work on Jetty or Tomcat first, specially if you're still learning Tapestry, and after that try the GAE, as it is a different environment. -- 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 -- Muhammad Mohsen Hussien Jr. Java Software Engineer
Re: [T5.2, Google Application Engine] Can't get a method to be realized (i.e. invoke a method)
Thanks a lot. I think Haward is correct but I can't confirm as I have no access to that code at the moment. I'll make sure to get back to you about that :) It's the *commons-lang-2.1.jar* that is mussing from the class path. I thought that this is the exception thrown. Not that its not actually a ClassNotFoundException. It's just because it's called NestableRuntime* Exception* I thought that this is the exception ! Which brings one more thing. What are the basic jars needed for tapestry to operate ? And another question please (but this may change the scope of this thread i'm afraid) why doesn't eclipse copy all included libraries in my project's class path to my lib folder *web-inf\lib* automatically !? Thanks again :) On Tue, Oct 5, 2010 at 9:40 AM, Howard Lewis Ship hls...@gmail.com wrote: You'll find more information in the console log, but from the little bit you've shown me, it looks like your classpath is missing a referenced library, the one that provided class NestableRuntimeException. On Tue, Oct 5, 2010 at 12:17 AM, Muhammad Mohsen m.gelb...@gmail.com wrote: Thanks for the advice you are totally correct. But this error also occurs on jetty. I made a mistake putting GAE in the subject. The error actually happens on both GAE and local jetty. I took my development locally to speed up the development process. Thank you for your time. On Tue, Oct 5, 2010 at 12:10 AM, Thiago H. de Paula Figueiredo thiag...@gmail.com wrote: On Mon, 04 Oct 2010 18:29:26 -0300, Muhammad Mohsen m.gelb...@gmail.com wrote: Hi All, Hi! I strongly suggest you to try to make your application work on Jetty or Tomcat first, specially if you're still learning Tapestry, and after that try the GAE, as it is a different environment. -- 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 -- Muhammad Mohsen Hussien Jr. Java Software Engineer -- 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 -- Muhammad Mohsen Hussien Jr. Java Software Engineer
Re: [T5.2, Google Application Engine] Can't get a method to be realized (i.e. invoke a method)
Back home 15 minutes ago, couldn't wait to try this and you are correct Howard. A jar I'm using needs commons-lang to operate. Thank you all for your time..and pardon me for such a silly mistake :) On Tue, Oct 5, 2010 at 4:55 PM, Howard Lewis Ship hls...@gmail.com wrote: Tapestry doesn't use commons-lang, but some code in your application apparently does. On Tue, Oct 5, 2010 at 5:41 AM, Muhammad Mohsen m.gelb...@gmail.com wrote: Thanks a lot. I think Haward is correct but I can't confirm as I have no access to that code at the moment. I'll make sure to get back to you about that :) It's the *commons-lang-2.1.jar* that is mussing from the class path. I thought that this is the exception thrown. Not that its not actually a ClassNotFoundException. It's just because it's called NestableRuntime* Exception* I thought that this is the exception ! Which brings one more thing. What are the basic jars needed for tapestry to operate ? And another question please (but this may change the scope of this thread i'm afraid) why doesn't eclipse copy all included libraries in my project's class path to my lib folder *web-inf\lib* automatically !? Thanks again :) On Tue, Oct 5, 2010 at 9:40 AM, Howard Lewis Ship hls...@gmail.com wrote: You'll find more information in the console log, but from the little bit you've shown me, it looks like your classpath is missing a referenced library, the one that provided class NestableRuntimeException. On Tue, Oct 5, 2010 at 12:17 AM, Muhammad Mohsen m.gelb...@gmail.com wrote: Thanks for the advice you are totally correct. But this error also occurs on jetty. I made a mistake putting GAE in the subject. The error actually happens on both GAE and local jetty. I took my development locally to speed up the development process. Thank you for your time. On Tue, Oct 5, 2010 at 12:10 AM, Thiago H. de Paula Figueiredo thiag...@gmail.com wrote: On Mon, 04 Oct 2010 18:29:26 -0300, Muhammad Mohsen m.gelb...@gmail.com wrote: Hi All, Hi! I strongly suggest you to try to make your application work on Jetty or Tomcat first, specially if you're still learning Tapestry, and after that try the GAE, as it is a different environment. -- 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 -- Muhammad Mohsen Hussien Jr. Java Software Engineer -- 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 -- Muhammad Mohsen Hussien Jr. Java Software Engineer -- 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 -- Muhammad Mohsen Hussien Jr. Java Software Engineer
Re: final version of Tapestry 5.2
Am extremely excited for that :) I read that v5.2 should support google application engine more than before by abandoning an xml class that is not supported by google application engine. Also we can force tapestry to work without the thread pool. Is there any further support for google application engine ? On Thu, Jul 29, 2010 at 5:02 PM, Ulrich Stärk u...@spielviel.de wrote: We will probably release an alpha version within the next week followed by additional alphas and betas as needed. The plan is to have a stable 5.2 release before JavaOne which begins on September 19th. Uli On 29.07.2010 15:31, Pablo Borges wrote: Hello staff, will be released when the final version of Tapestry 5.2? thanks - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- Muhammad Mohsen Hussien Jr. Java Software Engineer
Re: final version of Tapestry 5.2
Thanks Dmitry, Please let me make sure that I got this right. T5.2 fully compatible with GAE since sept. 2009 ? But still T5.2 is a snapshot...doesn't that mean that it's not ready for production usage..right ? On Thu, Jul 29, 2010 at 8:57 PM, Dmitry Gusev dmitry.gu...@gmail.comwrote: GAE supported by T5.2 since September 2009. No problems at all, except GAE's Java lags for 4-6 seconds to boot up. On Thu, Jul 29, 2010 at 19:53, Muhammad Mohsen m.gelb...@gmail.com wrote: Am extremely excited for that :) I read that v5.2 should support google application engine more than before by abandoning an xml class that is not supported by google application engine. Also we can force tapestry to work without the thread pool. Is there any further support for google application engine ? On Thu, Jul 29, 2010 at 5:02 PM, Ulrich Stärk u...@spielviel.de wrote: We will probably release an alpha version within the next week followed by additional alphas and betas as needed. The plan is to have a stable 5.2 release before JavaOne which begins on September 19th. Uli On 29.07.2010 15:31, Pablo Borges wrote: Hello staff, will be released when the final version of Tapestry 5.2? thanks - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- Muhammad Mohsen Hussien Jr. Java Software Engineer -- Dmitry Gusev AnjLab Team http://anjlab.com -- Muhammad Mohsen Hussien Jr. Java Software Engineer
Re: Hosting Apache Tapestry5.1 on GAE (Google Application Engine)
Alex, What does your logs say ?..exceptinos and not configuring log4j are 2 reasons I found to increase response time significantly. On Tue, Feb 23, 2010 at 3:27 AM, Alex Kotchnev akoch...@gmail.com wrote: Dmitry, I have a suspicion that every once in a while my app gets started on some messed up server that has a problem . Every once in a while, when I load a new version of the app, it starts doing this. Often times, if I give it some extra time after the upload and before the first request after uploading the app, it works fine. If I issue the first request too soon, I start getting this problem. Additionally, just looking at my stats on your ping-service ( zadachite-dev.appspot.com), every few days the response times go up significantly and the uptime (as reported by ping-service) goes down to 60% -70% . So, something is definitely going on in the infrastucture - maybe every once in a while my app gets loaded in JVM running on overburdened hardware... Regards, Alex K On Mon, Feb 22, 2010 at 6:12 AM, Dmitry Gusev dmitry.gu...@gmail.com wrote: Hi, 10 seconds limit is the limit of URLFetchService. Regular request (like browser's request for asset) have 30 seconds limit. It may however took too long time for your app to startup then timeout issue may occur. Have you tried to debug assets loading using firebug? On Mon, Feb 22, 2010 at 13:46, Alex Kotchnev akoch...@gmail.com wrote: Muhammad, regarding T5 serving assets : are you saying that if you map the application version (e.g. app-version) to a static number instead of the one generated by T5, you stop getting the intermittent asset access problem ? My problem is that assets do get served (they're not blocked); however, on the first couple of tries they fail to load (my suspicion is that it takes more than 10 seconds to serve them up the first couple of times and the GAE limit kicks in) Regards, Alex K On Sun, Feb 21, 2010 at 6:31 AM, Muhammad Mohsen m.gelb...@gmail.com wrote: Alex, You can check my blog post to fix the assets problem. It's about a configuration variable regarding the application version. Or check the Assets documentation entry at tapestry.com (i.e. for t5.1). It's discussed at the end of the page. But regarding tapx components..i couldn't figure out how to solve the assets issue..it never resolves an asset ! ..check my blog post to find solutions to what i'm talking about :) On Sat, Feb 20, 2010 at 6:27 AM, Kalle Korhonen kalle.o.korho...@gmail.comwrote: No, I haven't had issues with static assets but then again, the current example is pretty bare bones. I've certainly noticed that GAE is dog slow though. I read about how GAE scales and it's evident in our example as well that GAE just spawns new JVMs rather the new threads for additional instance fairly often. You end up using memcache and having to optimize for GAE quite a bit. I wouldn't run a production system on GAE. The bigger issue for me is no threading - if I was satisfied with that I'd just do PHP apps. Decent hosted VMs cost less than $50/month and they are blazingly fast compared to GAE. Depending on where you live and what the system does it's not a huge cost; but fully understand the other side of it as well - can't beat free. Kalle On Fri, Feb 19, 2010 at 6:14 PM, Alex Kotchnev akoch...@gmail.com wrote: Kalle, do you have any issues w/ static assets not being served from GAE ? I'm prepping an app to be deployed in production on GAE, and in its development state (http://zadachite-dev.appspot.com), I'm a bit discouraged : often, when the app is loaded, I often get missing assets and I have to reload the pages a few times before I get all assets showing up. Additionally, I've set up the app to be monitored by Dmitry's Ping-Service ( http://ping-service.appspot.com), and a few times a day it takes more than 10 seconds to load (and ping service times out). I've considered trying to figure out a way to deploy these assets (e.g. images, swf files, js) on a static server somewhere but that will unnecessarily complicate the app... Regards, Alex K On Thu, Feb 18, 2010 at 10:19 PM, Kalle Korhonen kalle.o.korho...@gmail.com wrote: On that note, I also recently deployed Tynamo's conversation example to GAE (see http://tynamo.org/tapestry-conversations+guide and http://tapestry-conversations.tynamo.org/), it was pretty straight-forwarded. It's all mavenized and naturally, the source is available for others to look at. Kalle On Wed, Feb 17, 2010 at 7:21 AM
Re: Hosting Apache Tapestry5.1 on GAE (Google Application Engine)
Thiago, * ..**ParallelExecutor*http://tapestry.apache.org/tapestry5/apidocs/org/apache/tapestry5/ioc/services/ParallelExecutor.html * service uses a thread pool..* *..**public interface **ParallelExecutorhttp://tapestry.apache.org/tapestry5/apidocs/src-html/org/apache/tapestry5/ioc/services/ParallelExecutor.html#line.28 A service that allows work to occur in parallel using a thread pool. The thread pool is started lazily, and is shutdown when the Registry is shutdown...* http://tapestry.apache.org/tapestry5/apidocs/org/apache/tapestry5/IOCSymbols.html#THREAD_POOL_ENABLED I'm not absolutely sure, but I think tapestry's registry uses this service to invoke it's modules in threads..since we made tapestry run in a single thread..and if my assumption is correct..then tapestry will definitely slow down..this drop is proportional to the amount of work done in the application. Alex, I'll tell you what happened with me. Tapestry on GAE kept returning tapestry assets in broken paths. Nothing where actually there at the locations returned. So my suggestion is not for slow responses that times out. it's for the issue discussed at the end of this page: http://tapestry.apache.org/tapestry5/guide/assets.html Actually its not my suggestion, the guide did mention it. On Mon, Feb 22, 2010 at 1:12 PM, Dmitry Gusev dmitry.gu...@gmail.comwrote: Hi, 10 seconds limit is the limit of URLFetchService. Regular request (like browser's request for asset) have 30 seconds limit. It may however took too long time for your app to startup then timeout issue may occur. Have you tried to debug assets loading using firebug? On Mon, Feb 22, 2010 at 13:46, Alex Kotchnev akoch...@gmail.com wrote: Muhammad, regarding T5 serving assets : are you saying that if you map the application version (e.g. app-version) to a static number instead of the one generated by T5, you stop getting the intermittent asset access problem ? My problem is that assets do get served (they're not blocked); however, on the first couple of tries they fail to load (my suspicion is that it takes more than 10 seconds to serve them up the first couple of times and the GAE limit kicks in) Regards, Alex K On Sun, Feb 21, 2010 at 6:31 AM, Muhammad Mohsen m.gelb...@gmail.com wrote: Alex, You can check my blog post to fix the assets problem. It's about a configuration variable regarding the application version. Or check the Assets documentation entry at tapestry.com (i.e. for t5.1). It's discussed at the end of the page. But regarding tapx components..i couldn't figure out how to solve the assets issue..it never resolves an asset ! ..check my blog post to find solutions to what i'm talking about :) On Sat, Feb 20, 2010 at 6:27 AM, Kalle Korhonen kalle.o.korho...@gmail.comwrote: No, I haven't had issues with static assets but then again, the current example is pretty bare bones. I've certainly noticed that GAE is dog slow though. I read about how GAE scales and it's evident in our example as well that GAE just spawns new JVMs rather the new threads for additional instance fairly often. You end up using memcache and having to optimize for GAE quite a bit. I wouldn't run a production system on GAE. The bigger issue for me is no threading - if I was satisfied with that I'd just do PHP apps. Decent hosted VMs cost less than $50/month and they are blazingly fast compared to GAE. Depending on where you live and what the system does it's not a huge cost; but fully understand the other side of it as well - can't beat free. Kalle On Fri, Feb 19, 2010 at 6:14 PM, Alex Kotchnev akoch...@gmail.com wrote: Kalle, do you have any issues w/ static assets not being served from GAE ? I'm prepping an app to be deployed in production on GAE, and in its development state (http://zadachite-dev.appspot.com), I'm a bit discouraged : often, when the app is loaded, I often get missing assets and I have to reload the pages a few times before I get all assets showing up. Additionally, I've set up the app to be monitored by Dmitry's Ping-Service ( http://ping-service.appspot.com), and a few times a day it takes more than 10 seconds to load (and ping service times out). I've considered trying to figure out a way to deploy these assets (e.g. images, swf files, js) on a static server somewhere but that will unnecessarily complicate the app... Regards, Alex K On Thu, Feb 18, 2010 at 10:19 PM, Kalle Korhonen kalle.o.korho...@gmail.com wrote: On that note, I also recently deployed Tynamo's conversation example to GAE (see http://tynamo.org/tapestry-conversations+guide and http://tapestry-conversations.tynamo.org/), it was pretty straight-forwarded. It's all
Re: Hosting Apache Tapestry5.1 on GAE (Google Application Engine)
Alex, You can check my blog post to fix the assets problem. It's about a configuration variable regarding the application version. Or check the Assets documentation entry at tapestry.com (i.e. for t5.1). It's discussed at the end of the page. But regarding tapx components..i couldn't figure out how to solve the assets issue..it never resolves an asset ! ..check my blog post to find solutions to what i'm talking about :) On Sat, Feb 20, 2010 at 6:27 AM, Kalle Korhonen kalle.o.korho...@gmail.comwrote: No, I haven't had issues with static assets but then again, the current example is pretty bare bones. I've certainly noticed that GAE is dog slow though. I read about how GAE scales and it's evident in our example as well that GAE just spawns new JVMs rather the new threads for additional instance fairly often. You end up using memcache and having to optimize for GAE quite a bit. I wouldn't run a production system on GAE. The bigger issue for me is no threading - if I was satisfied with that I'd just do PHP apps. Decent hosted VMs cost less than $50/month and they are blazingly fast compared to GAE. Depending on where you live and what the system does it's not a huge cost; but fully understand the other side of it as well - can't beat free. Kalle On Fri, Feb 19, 2010 at 6:14 PM, Alex Kotchnev akoch...@gmail.com wrote: Kalle, do you have any issues w/ static assets not being served from GAE ? I'm prepping an app to be deployed in production on GAE, and in its development state (http://zadachite-dev.appspot.com), I'm a bit discouraged : often, when the app is loaded, I often get missing assets and I have to reload the pages a few times before I get all assets showing up. Additionally, I've set up the app to be monitored by Dmitry's Ping-Service ( http://ping-service.appspot.com), and a few times a day it takes more than 10 seconds to load (and ping service times out). I've considered trying to figure out a way to deploy these assets (e.g. images, swf files, js) on a static server somewhere but that will unnecessarily complicate the app... Regards, Alex K On Thu, Feb 18, 2010 at 10:19 PM, Kalle Korhonen kalle.o.korho...@gmail.com wrote: On that note, I also recently deployed Tynamo's conversation example to GAE (see http://tynamo.org/tapestry-conversations+guide and http://tapestry-conversations.tynamo.org/), it was pretty straight-forwarded. It's all mavenized and naturally, the source is available for others to look at. Kalle On Wed, Feb 17, 2010 at 7:21 AM, Muhammad Mohsen m.gelb...@gmail.com wrote: I'd like to share my experience regarding the issue. I'm not a tapestry guru but I just fought my way through hosting it on google application engine. Here is my blogpost about hosting tapestry5.1 on Google application engine http://java-army.blogspot.com/2010/02/hosting-apache-tapestry51-on-gae-google.html You'll find the application's link it but here it is againhttp://j-army.appspot.com/ . Please note that it has absolutely NOTHING but registering, logging in and logging out ! That's as much as I've gone with tapestry so far. I had nothing in mind to do ! Enjoy :) -- Muhammad Mohsen Hussien Jr. Java Software Engineer HP Enterprise Services - 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 -- Muhammad Mohsen Hussien Jr. Java Software Engineer HP Enterprise Services
Re: Hosting Apache Tapestry5.1 on GAE (Google Application Engine)
Adding, I'd say that the low performance is due to the single thread restriction that GAE forces on tapestry and most probably other frameworks. On Sun, Feb 21, 2010 at 1:31 PM, Muhammad Mohsen m.gelb...@gmail.comwrote: Alex, You can check my blog post to fix the assets problem. It's about a configuration variable regarding the application version. Or check the Assets documentation entry at tapestry.com (i.e. for t5.1). It's discussed at the end of the page. But regarding tapx components..i couldn't figure out how to solve the assets issue..it never resolves an asset ! ..check my blog post to find solutions to what i'm talking about :) On Sat, Feb 20, 2010 at 6:27 AM, Kalle Korhonen kalle.o.korho...@gmail.com wrote: No, I haven't had issues with static assets but then again, the current example is pretty bare bones. I've certainly noticed that GAE is dog slow though. I read about how GAE scales and it's evident in our example as well that GAE just spawns new JVMs rather the new threads for additional instance fairly often. You end up using memcache and having to optimize for GAE quite a bit. I wouldn't run a production system on GAE. The bigger issue for me is no threading - if I was satisfied with that I'd just do PHP apps. Decent hosted VMs cost less than $50/month and they are blazingly fast compared to GAE. Depending on where you live and what the system does it's not a huge cost; but fully understand the other side of it as well - can't beat free. Kalle On Fri, Feb 19, 2010 at 6:14 PM, Alex Kotchnev akoch...@gmail.com wrote: Kalle, do you have any issues w/ static assets not being served from GAE ? I'm prepping an app to be deployed in production on GAE, and in its development state (http://zadachite-dev.appspot.com), I'm a bit discouraged : often, when the app is loaded, I often get missing assets and I have to reload the pages a few times before I get all assets showing up. Additionally, I've set up the app to be monitored by Dmitry's Ping-Service ( http://ping-service.appspot.com), and a few times a day it takes more than 10 seconds to load (and ping service times out). I've considered trying to figure out a way to deploy these assets (e.g. images, swf files, js) on a static server somewhere but that will unnecessarily complicate the app... Regards, Alex K On Thu, Feb 18, 2010 at 10:19 PM, Kalle Korhonen kalle.o.korho...@gmail.com wrote: On that note, I also recently deployed Tynamo's conversation example to GAE (see http://tynamo.org/tapestry-conversations+guide and http://tapestry-conversations.tynamo.org/), it was pretty straight-forwarded. It's all mavenized and naturally, the source is available for others to look at. Kalle On Wed, Feb 17, 2010 at 7:21 AM, Muhammad Mohsen m.gelb...@gmail.com wrote: I'd like to share my experience regarding the issue. I'm not a tapestry guru but I just fought my way through hosting it on google application engine. Here is my blogpost about hosting tapestry5.1 on Google application engine http://java-army.blogspot.com/2010/02/hosting-apache-tapestry51-on-gae-google.html You'll find the application's link it but here it is againhttp://j-army.appspot.com/ . Please note that it has absolutely NOTHING but registering, logging in and logging out ! That's as much as I've gone with tapestry so far. I had nothing in mind to do ! Enjoy :) -- Muhammad Mohsen Hussien Jr. Java Software Engineer HP Enterprise Services - 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 -- Muhammad Mohsen Hussien Jr. Java Software Engineer HP Enterprise Services -- Muhammad Mohsen Hussien Jr. Java Software Engineer HP Enterprise Services
Hosting Apache Tapestry5.1 on GAE (Google Application Engine)
I'd like to share my experience regarding the issue. I'm not a tapestry guru but I just fought my way through hosting it on google application engine. Here is my blogpost about hosting tapestry5.1 on Google application enginehttp://java-army.blogspot.com/2010/02/hosting-apache-tapestry51-on-gae-google.html You'll find the application's link it but here it is againhttp://j-army.appspot.com/ . Please note that it has absolutely NOTHING but registering, logging in and logging out ! That's as much as I've gone with tapestry so far. I had nothing in mind to do ! Enjoy :) -- Muhammad Mohsen Hussien Jr. Java Software Engineer HP Enterprise Services
Re: [T5.1] Remembering Search Parameter during Changing Page in Grid
I'm no expert in tapestry and I'm not sure if I got your question right, but either ways I'll try to help. 1.try using use @Persist without specifying that it's a session scoped persistence. (assuming you are using tapestry 5) 2.refer to the hilo tutorial here on tapestryhttp://tapestry.apache.org/tapestry5.1/tutorial1/hilo.html. See it through till the end, I'm sure you'll find what you're looking for god willing. On Tue, Feb 16, 2010 at 7:42 AM, Yohan Yudanara yohan.yudan...@gmail.comwrote: Hi.. I'd like to ask a question which seems to be basic question, but I can't find it on this mailing list archives and wiki. I have a page with textfield, search button, and grid to display search result: t:textfield t:id=searchParam t:value=searchParam / t:submit t:id=search value=Search / Let's say the search returned 60 rows, and the grid display the first 25 rows. If I click link to second page to display next 25 rows, the search result is displayed correctly if I was using session (not FLASH) to save searchParam, like this: @Persist(PersistenceConstants.SESSION) private String searchParam; My page class executing search query to return GridDataSource object on setupRender() method. My question is: can I execute above scenario without persisting searchParam in Session ? Thanks in advance. Regards, Yohan Yudanara - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- Muhammad Mohsen Hussien Jr. Java Software Engineer HP Enterprise Services