Re: Migrated from t5componets 0.5.18 to chenillekit-tapestry 1.0.0
Hi, Has anyone seen this problem? I am still not able to fix it? Petros Petros Petrou wrote: I just changed my dependencies from t5components 0.5.18 to chenillekit-tapestry 1.0.0 and the following code that used to work fine now throws the exception shown below. Switching back to t5components 0.5.18 fixes the problem ** @Inject @Property private Block themeBlock; ** @OnEvent(component = uiThemeForm, value = submit) private Block onSuccessFromUiThemeForm() { settingsOrchestrator.saveSelectedTheme(selectedTheme); active = true; themeFeedbackMessage = messages.format(theme-feedback-message, selectedTheme); return themeBlock; } ** EXCEPTION Caused by: java.lang.RuntimeException: A component event handler method returned the value Block[themeBlock within setting/Page, at classpath:com/celestiatech/ui/pages/setting/SettingPage.tml, line 17, column 60]. Return type org.apache.tapestry5.internal.structure.BlockImpl can not be handled. Configured return types are java.lang.Class, java.lang.String, java.net.URL, org.apache.tapestry5.Link, org.apache.tapestry5.StreamResponse, org.apache.tapestry5.runtime.Component. Petros -- View this message in context: http://www.nabble.com/Migrated-from-t5componets-0.5.18-to-chenillekit-tapestry-1.0.0-tp21933310p22099176.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
T5:Cannot create a session after the response has been committed
Hi, I have following code used to logout a user: asm.set(MySession.class, null); global.getHTTPServletRequest().getSession().invalidate(); cookies.removeCookieValue(my.login); but I'm getting this error with a Tomcat 5.25,but not all, any idea why? Thanks, Angelo [ERROR] [default] Servlet.service() for servlet default threw exception java.lang.IllegalStateException: Cannot create a session after the response has been committed at org.apache.catalina.connector.Request.doGetSession(Request.java:2221) ... at org.apache.tapestry5.internal.services.RequestImpl.getSession(RequestImpl.java:99) ... at org.apache.tapestry5.internal.services.SessionApplicationStatePersistenceStrategy.requestDidComplete(SessionApplicationStatePersistenceStrategy.java:126) at org.apache.tapestry5.internal.services.EndOfRequestListenerHubImpl.fire(EndOfRequestListenerHubImpl.java:40) at $EndOfRequestListenerHub_11f8e01679c.fire($EndOfRequestListenerHub_11f8e01679c.java) at org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:625) at $RequestHandler_11f8e01679f.service($RequestHandler_11f8e01679f.java) at org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:611) at $RequestHandler_11f8e01679f.service($RequestHandler_11f8e01679f.java) at org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:85) at $RequestHandler_11f8e01679f.service($RequestHandler_11f8e01679f.java) at org.abc.myapp.t5.services.AppModule$1.service(AppModule.java:217) at $RequestFilter_11f8e016798.service($RequestFilter_11f8e016798.java) at $RequestHandler_11f8e01679f.service($RequestHandler_11f8e01679f.java) at org.abc.myapp.t5.services.AppModule$2.service(AppModule.java:252) at $RequestFilter_11f8e016799.service($RequestFilter_11f8e016799.java) at $RequestHandler_11f8e01679f.service($RequestHandler_11f8e01679f.java) at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:93) at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:84) at org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:83) at org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:106) at $RequestHandler_11f8e01679f.service($RequestHandler_11f8e01679f.java) at $RequestHandler_11f8e016794.service($RequestHandler_11f8e016794.java) at org.apache.tapestry5.services.TapestryModule$16.service(TapestryModule.java:1007) at org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44) at $HttpServletRequestHandler_11f8e016795.service($HttpServletRequestHandler_11f8e016795.java) at org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62) at $HttpServletRequestFilter_11f8e016792.service($HttpServletRequestFilter_11f8e016792.java) at $HttpServletRequestHandler_11f8e016795.service($HttpServletRequestHandler_11f8e016795.java) at org.abc.myapp.t5.URLRewriteRequestFilter.service(URLRewriteRequestFilter.java:79) at $HttpServletRequestHandler_11f8e016795.service($HttpServletRequestHandler_11f8e016795.java) at $HttpServletRequestHandler_11f8e016791.service($HttpServletRequestHandler_11f8e016791.java) at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:179) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.abc.myapp.Filter.doFilter(Filter.java:37) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
Re: T5:Cannot create a session after the response has been committed
Please post the class that contains the snippet you posted here. By the way, you don't need to asm.set(MySession.class, null), as you're invalidating the session. You can also inject HttpServletRequest directly and instead of getting it from RequestGlobals. Better yet, inject Tapestry's Request and do: Session session = request.getSession(false); if (session != null) { session.invalidate(); } -- Thiago - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
If component
Hi! Let's say I have: public interface Foo { getId(); } public class A implements Foo { } public class B implements Foo { } public class C implements Foo { } public class Index { private MapFloat, Foo foos = new TreeMapFloat, Foo(); } Let there be components for classes A,B,C, also component.A id= / etc. I want in Index.tml to loop over foos, and based on Foo type to call appropriate component (A,B or C): Something like: div t:type=loop t:source=foos t:value=item /* Here should be something like : if(item insanceof A) component.A id=item.id / if(item insanceof B) component.B id=item.id / if(item insanceof C) component.C id=item.id / */ t:category.preview.render t:previewId=preview.id/ /div As I know Tapestry If component is checking true/false on property, and adding that properties to Foo is not an option. I hope I'm clear enough. So, how could I accomplish this?
Re: If component
On Thu, Feb 19, 2009 at 10:37 AM, Davor Miku davorm...@gmail.com wrote: So, how could I accomplish this? Add methods to your page or component class: public boolean isInstanceOfA() { return item instanceof A; } public boolean isInstanceOfB() { return item instanceof B; } t:if test=isInstanceOfA /t:if -- Thiago - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: If component
With a delegate component. in your template: div t:type=loop t:source=foos t:value=item t:delegate to=renderBlock / t:category.preview.render t:previewId=preview.id/ /div t:block t:id=compAblock component.A id=item.id / /t:block t:block t:id=compBblock component.B id=item.id / /t:block t:block t:id=compCblock component.C id=item.id / /t:block and in your page class: @InjectComponent private Block compAblock; @InjectComponent private Block compBblock; @InjectComponent private Block compCblock; public Block getRenderBlock() { if(item instanceof A) return compAblock; if(item instanceof B) return compBblock; if(item instanceof C) return compCblock; } Something along those lines. I hope you get the idea, don't take any of those code snippets as granted :) Uli Davor Miku schrieb: Hi! Let's say I have: public interface Foo { getId(); } public class A implements Foo { } public class B implements Foo { } public class C implements Foo { } public class Index { private MapFloat, Foo foos = new TreeMapFloat, Foo(); } Let there be components for classes A,B,C, also component.A id= / etc. I want in Index.tml to loop over foos, and based on Foo type to call appropriate component (A,B or C): Something like: div t:type=loop t:source=foos t:value=item /* Here should be something like : if(item insanceof A) component.A id=item.id / if(item insanceof B) component.B id=item.id / if(item insanceof C) component.C id=item.id / */ t:category.preview.render t:previewId=preview.id/ /div As I know Tapestry If component is checking true/false on property, and adding that properties to Foo is not an option. I hope I'm clear enough. So, how could I accomplish this? - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: If component
Are you sure this is going to work? If Foo is B, and I'm: t:if test=isInstanceOfA /t:if B doesn't have isInstanceOfA(). Is it going to false that or to throw exception? On Thu, Feb 19, 2009 at 8:41 AM, Thiago H. de Paula Figueiredo thiag...@gmail.com wrote: On Thu, Feb 19, 2009 at 10:37 AM, Davor Miku davorm...@gmail.com wrote: So, how could I accomplish this? Add methods to your page or component class: public boolean isInstanceOfA() { return item instanceof A; } public boolean isInstanceOfB() { return item instanceof B; } t:if test=isInstanceOfA /t:if -- Thiago - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: If component
Thank you both very much, both solutions work fine! On Thu, Feb 19, 2009 at 8:45 AM, Davor Miku davorm...@gmail.com wrote: Are you sure this is going to work? If Foo is B, and I'm: t:if test=isInstanceOfA /t:if B doesn't have isInstanceOfA(). Is it going to false that or to throw exception? On Thu, Feb 19, 2009 at 8:41 AM, Thiago H. de Paula Figueiredo thiag...@gmail.com wrote: On Thu, Feb 19, 2009 at 10:37 AM, Davor Miku davorm...@gmail.com wrote: So, how could I accomplish this? Add methods to your page or component class: public boolean isInstanceOfA() { return item instanceof A; } public boolean isInstanceOfB() { return item instanceof B; } t:if test=isInstanceOfA /t:if -- Thiago - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: If component
On Thu, Feb 19, 2009 at 10:45 AM, Davor Miku davorm...@gmail.com wrote: Are you sure this is going to work? Ooops, I've found an error: it should be t:if test=instanceOfA /t:if, not test=isInstanceOfA If Foo is B, and I'm: t:if test=isInstanceOfA /t:if B doesn't have isInstanceOfA(). Is it going to false that or to throw exception? False, the If component will call isInstanceOfA() in the page. Java's instanceof operator does not throw exceptions: it returns a boolean value. My solution is the best one only if you have one or two of this tests. Otherwise, Ulrich's solution is the recommended one. -- Thiago - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: Migrated from t5componets 0.5.18 to chenillekit-tapestry 1.0.0
On Tue, Feb 10, 2009 at 2:11 PM, Petros Petrou pet...@cypoz.com wrote: I just changed my dependencies from t5components 0.5.18 to chenillekit-tapestry 1.0.0 and the following code that used to work fine now throws the exception shown below. Switching back to t5components 0.5.18 fixes the problem ChenilleKit has it's own mail list so please post there, we would be more helpful. -- Massimo http://meridio.blogspot.com - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
T5: Passivate, forms and environmentals
Hi all, I have a page class, which in beginRender pushes a class into the environment. Then a component uses that environmental value. This works fine, and I use it in the page activation and passivation methods and all is well. In the component, I have a form which sets some values. When I submit the form, I get the message No object of type SomeClass is available in the Environment. My question is: does the form submission passivate the page class? It seems like it doesn't, is that the correct behaviour? I think I'm misunderstanding how events and the like work. What should I be doing? I can get around it by passing in the instance of 'SomeClass' as context to the form, but that means I can't include other values that the page itself passivates. I've added some psuedo-code below which demonstrates what my code looks like. I've deliberately left out lots of chaff to make it clearer. Carl class Page { void onActivate( SomeClass test ) { this.test = test } void beginRender{ environment.push( SomeClass.class, this.test ); } void afterRender{ this.test = environment.pop( SomeClass.class ); } Object[] onPassivate() { return new Object[]{ this.test }; } } class Component { @Environmental SomeClass test; void setFoo( int val ) { test.setFoo( val ); } } - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: T5:Cannot create a session after the response has been committed
Hi Thiago, Thanks for the reply, I have modified the code as you sugested, looks neat. the problem seems having to do with @ApplicationState, I have this for the same class in two places, also create it in a service, in one page, I have A @ApplicationState SessionDat _dat, in the same time I call the service which might also create an instance of SessionDat, I'm still tracing... thanks, Angelo Thiago H. de Paula Figueiredo wrote: Please post the class that contains the snippet you posted here. By the way, you don't need to asm.set(MySession.class, null), as you're invalidating the session. You can also inject HttpServletRequest directly and instead of getting it from RequestGlobals. Better yet, inject Tapestry's Request and do: Session session = request.getSession(false); if (session != null) { session.invalidate(); } -- Thiago - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- View this message in context: http://www.nabble.com/T5%3ACannot-create-a-session-after-the-response-has-been-committed-tp22099641p22102555.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
Re: [T5.0.18] Bug? : Null property problem with the custom component inside a grid
If there are no other ideas, whether it should work or not (and why), the way I have done it, aside from the alternative solution hints, maybe I should try to create a bug issue in T5 jira. For me it is still not clear, why it does not work. Any other ideas? -- iren Thiago H. de Paula Figueiredo wrote: On Sun, Feb 15, 2009 at 8:21 AM, Otho taa...@googlemail.com wrote: One possible solution is to store the images in the filesystem instead of the database and store only the filename in the db from where you can construct a path. But I think that isn't compatible with your requirements? Maybe a better solution would be to provide an Asset binding (like context and classpath) and AssetFactory, both pulling the images from the database. -- Thiago -- View this message in context: http://n2.nabble.com/-T5.0.18--Bug--%3A-Null-property-problem-with-the-custom-component-inside-a-grid-tp2324166p2353720.html Sent from the Tapestry Users 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
Why Grid component fetches data one more time in form submit
Hi, When Grid is in a form, even though 'volatile' parameter is set to 'false' (by default), I can see the datasource provider method is called during form submit. My understanding is that, if 'volatile' is false, it should not be called in form submitted, am I missing something? Object setupRender() { if (formSupport != null) formSupport.store(this, SETUP_DATA_SOURCE); ... } From the source code of Grid.java, if Grid is in form, the SETUP_DATA_SOURCE componentaction is always called after form submitted. I think 'volatile' should be here to prevent it from calling during submit. Unfortunately 'volatile' parameter is now declared as publishParameters of GridRows component. How do you handle grid component in a form? Thanks, DH
Re: [T5.0.18] Bug? : Null property problem with the custom component inside a grid
It's very simple. When the Grid component renders, it is keeping the book property up-to date as the components in its body render. Thus, if you look at the rendered output, you'll see an img element and a URL that references the component and the displayImage custom event. Now what happens when that URL is triggered? The Image component attempts to read the book property and de-reference the binaryStream property. Well, it was the Grid components job to keep the book property up-to date *while it was rendering*, but the Grid component isn't rendering in this new request. In fact, if you look at the rendered URL you'll see that every time the Image component rendered, it rendered the same URL. How is it supposed to know from that which book's image to stream to the client? The solution is to use event context to identify the book, or in some other way, identify where the data stream is supposed to come from. On Thu, Feb 19, 2009 at 8:05 AM, Iren Tuna iren.t...@sphinx.at wrote: If there are no other ideas, whether it should work or not (and why), the way I have done it, aside from the alternative solution hints, maybe I should try to create a bug issue in T5 jira. For me it is still not clear, why it does not work. Any other ideas? -- iren Thiago H. de Paula Figueiredo wrote: On Sun, Feb 15, 2009 at 8:21 AM, Otho taa...@googlemail.com wrote: One possible solution is to store the images in the filesystem instead of the database and store only the filename in the db from where you can construct a path. But I think that isn't compatible with your requirements? Maybe a better solution would be to provide an Asset binding (like context and classpath) and AssetFactory, both pulling the images from the database. -- Thiago -- View this message in context: http://n2.nabble.com/-T5.0.18--Bug--%3A-Null-property-problem-with-the-custom-component-inside-a-grid-tp2324166p2353720.html Sent from the Tapestry Users 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 -- Howard M. Lewis Ship Creator Apache Tapestry and Apache HiveMind - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: Displaying the source of an event
I am actually completely stuck on a problem that would be solved by being able to get the component id in this fashion. I am implementing a form. The form uses an ajaxformloop to add/remove fields. The fields are select elements. What's more, I am using the @OnEvent mixin + javascript to make one select dependent on the other. This dependent select approach works fine outside of the ajaxformloop. The problem happens in the javascript function called. It is impossible to know which select fired the onChange and consequently which dependent select to update. The rendered select elements have a generated unique id. If I could determine in the javascript function which select fired the on change OR if I could stick that id in the parameter of this function, it would work. I am REALLY desperate to get this to work in the ajaxformloop, as I have a deadline. Anything someone could tell me that would help would be VERY much appreciated. As a side note, I have used Tapestry since T4. I love it immensly, and love T5 even more. Fantastic work to Howard and everyone who builds and maintains it. I find it weird that the Ajax/javascript implementation seems incongruent to how smart T5 is. Thanks in advance Howard Lewis Ship wrote: Unnecessary would be too strong. The best bet for this kind of thing would be to add an issue requesting this kind of logging be built into Tapestry. There isn't a MagicWand service that stores any data about the current event. On Feb 11, 2008 3:34 PM, Hilco Wijbenga hilco.wijbe...@gmail.com wrote: On Feb 7, 2008 3:31 PM, Hilco Wijbenga hilco.wijbe...@gmail.com wrote: To aid debugging, is it possible to do something like this: @onEvent public void onEvent() { final String componentId = MagicWand.getComponentIdForThisEvent(); final String action = MagicWand.getActionForThisEvent(); System.out.println(Component ID: + componentId); System.out.println(Action: + action); } What's T5's replacement for MagicWand? :-) Is this impossible? Or unnecessary? - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- Howard M. Lewis Ship Creator Apache Tapestry and Apache HiveMind - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org -- View this message in context: http://www.nabble.com/Displaying-the-source-of-an-event-tp15346218p22108075.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
Dependent select implemented with @OnEvent mixin + AjaxFormLoop
I am desperately looking for a solution to get a select element that is dependent on another select element to work inside an AjaxFormLoop. Outside of an AjaxFormLoop, I can use @OnEvent mixin from T5Components to implement the dependent select (i.e. the value selected in the first select is used to populate the values available in the second select). Once this is placed inside an AjaxFormLoop, the client id for the select elements are made unique by having a unique number appended to it. Inside the JavaScript function, it can no longer find the select element to update as it doesn't know which one (what id) to update. I posted a related question here: http://www.nabble.com/Displaying-the-source-of-an-event-td15346218.html#a22108075 I am really desperate to get this to work. Anything anyone can tell me with regards to this would be whole-heartedly appreciated. Cheers -- View this message in context: http://www.nabble.com/Dependent-%3Cselect%3E-implemented-with-%40OnEvent-mixin-%2B-AjaxFormLoop-tp22108985p22108985.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
Re: Dependent select implemented with @OnEvent mixin + AjaxFormLoop
Em Thu, 19 Feb 2009 17:28:16 -0300, gladstone esm...@onecornerstone.com escreveu: Once this is placed inside an AjaxFormLoop, the client id for the select elements are made unique by having a unique number appended to it. Inside the JavaScript function, it can no longer find the select element to update as it doesn't know which one (what id) to update. Does it help to use Select's (and any other AbstractField class) getClientId() method? -- Thiago H. de Paula Figueiredo Independent Java consultant, developer, and instructor http://www.arsmachina.com.br/thiago - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
RE: Dependent select implemented with @OnEvent mixin + AjaxFormLoop
I first thought of somehow using getClientId(). The problem is that I need the id in the JavaScript function (the onCompleteCallback one) to then try and determine which select put values into. If I could call getClientId() when in the Java @OnEvent method, then I could sneak it in as the first entry in my JSONArray. The problem there is, what could I base the getClientId() method off of? -Original Message- From: Thiago H. de Paula Figueiredo [mailto:thiag...@gmail.com] Sent: Thursday, February 19, 2009 3:33 PM To: Tapestry users Subject: Re: Dependent select implemented with @OnEvent mixin + AjaxFormLoop Em Thu, 19 Feb 2009 17:28:16 -0300, gladstone esm...@onecornerstone.com escreveu: Once this is placed inside an AjaxFormLoop, the client id for the select elements are made unique by having a unique number appended to it. Inside the JavaScript function, it can no longer find the select element to update as it doesn't know which one (what id) to update. Does it help to use Select's (and any other AbstractField class) getClientId() method? -- Thiago H. de Paula Figueiredo Independent Java consultant, developer, and instructor http://www.arsmachina.com.br/thiago - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org This message (including any attachments) is intended only for the use of the individual or entity to whom it is addressed and may contain information that is non-public, proprietary, privileged, confidential, and exempt from disclosure under applicable law or may constitute attorney work product. If you are not the intended recipient, you are hereby notified that any use, dissemination, distribution, or copying of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by telephone and (i) destroy this message if a facsimile or (ii) delete this message immediately if an electronic communication. - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: Dependent select implemented with @OnEvent mixin + AjaxFormLoop
Em Thu, 19 Feb 2009 17:44:54 -0300, Elmer Smith esm...@venterraliving.com escreveu: I first thought of somehow using getClientId(). The problem is that I need the id in the JavaScript function (the onCompleteCallback one) to then try and determine which select put values into. I have also needed to know what component fired an event, so I filed https://issues.apache.org/jira/browse/TAP5-146. You can vote there. The most votes, the most likely to beee solved. :) Another solution, maybe more complicated, would be to write the Javascript yourself instead of using the @OnEvent mixin. Using Prototype, that wouldn't be hard. Your JS code would request an URL generated by ComponentResources.createEventLink(). Maybe you'll need to add the client id to this URL, maybe not. Your event handler method would receive the id through its parameter. I don't know if this works, but that's what I would try to do. ;) -- Thiago H. de Paula Figueiredo Independent Java consultant, developer, and instructor http://www.arsmachina.com.br/thiago - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org
Re: [OT] By boss decided
Today the official winner was announced. The corporate mind decided we will use PHP Zend. The deciding factor was http://www.zend.com/en/products/platform/customers Nonetheless, I hope I will post a better news in a few of months which will go directly into success stories. -Borut 2009/2/18 Borut Bolčina borut.bolc...@gmail.com Hello, just want to share a piece of corporate mind set with you. My boss decided that none of the Java frameworks is productive in comparison to PHP, Ruby and Django and that there are no web sites written in any Java framework. Can you believe that? I would like to prove him wrong with Tapestry Cayenne combo. Unfortunately I have no list of T5 success stories. I am sorry for spamming, but I had to let the steam out! -Borut
Re: [OT] By boss decided
Ok, I'm sure the tapestry list will still be here to help in two years when they get to phase 3 and have to start from scratch ;) -dh On Thu, Feb 19, 2009 at 4:38 PM, Borut Bolčina borut.bolc...@gmail.comwrote: Today the official winner was announced. The corporate mind decided we will use PHP Zend. The deciding factor was http://www.zend.com/en/products/platform/customers Nonetheless, I hope I will post a better news in a few of months which will go directly into success stories. -Borut 2009/2/18 Borut Bolčina borut.bolc...@gmail.com Hello, just want to share a piece of corporate mind set with you. My boss decided that none of the Java frameworks is productive in comparison to PHP, Ruby and Django and that there are no web sites written in any Java framework. Can you believe that? I would like to prove him wrong with Tapestry Cayenne combo. Unfortunately I have no list of T5 success stories. I am sorry for spamming, but I had to let the steam out! -Borut
Re: NPE with ajax form loop
I got this NPE too, but seems at different place: Request time: 16 ms [ERROR] RequestExceptionHandler Processing of request failed with uncaught exception: java.lang.NullPointerException java.lang.NullPointerException at org.apache.tapestry5.dom.Element.createNamespaceURIToPrefix(Element.java:596) at org.apache.tapestry5.dom.Element.toMarkup(Element.java:294) at org.apache.tapestry5.dom.Node.writeChildMarkup(Node.java:104) at org.apache.tapestry5.dom.Node.getChildMarkup(Node.java:114) at org.apache.tapestry5.internal.services.PageRenderQueueImpl.renderPartial(PageRenderQueueImpl.java:163) at $PageRenderQueue_11f90a45345.renderPartial($PageRenderQueue_11f90a45345.java) at $PageRenderQueue_11f90a45309.renderPartial($PageRenderQueue_11f90a45309.java) at org.apache.tapestry5.internal.services.PartialMarkupRendererTerminator.renderMarkup(PartialMarkupRendererTerm inator.java:39) at org.apache.tapestry5.services.TapestryModule$31.renderMarkup(TapestryModule.java:1801) at $PartialMarkupRenderer_11f90a45358.renderMarkup($PartialMarkupRenderer_11f90a45358.java) at org.apache.tapestry5.services.TapestryModule$30.renderMarkup(TapestryModule.java:1782) at $PartialMarkupRenderer_11f90a45358.renderMarkup($PartialMarkupRenderer_11f90a45358.java) at org.apache.tapestry5.services.TapestryModule$29.renderMarkup(TapestryModule.java:1764) at $PartialMarkupRenderer_11f90a45358.renderMarkup($PartialMarkupRenderer_11f90a45358.java) at org.apache.tapestry5.services.TapestryModule$28.renderMarkup(TapestryModule.java:1746) at $PartialMarkupRenderer_11f90a45358.renderMarkup($PartialMarkupRenderer_11f90a45358.java) at org.apache.tapestry5.services.TapestryModule$27.renderMarkup(TapestryModule.java:1720) at $PartialMarkupRenderer_11f90a45358.renderMarkup($PartialMarkupRenderer_11f90a45358.java) at $PartialMarkupRenderer_11f90a45357.renderMarkup($PartialMarkupRenderer_11f90a45357.java) at org.apache.tapestry5.internal.services.AjaxPartialResponseRendererImpl.renderPartialPageMarkup(AjaxPartialRes ponseRendererImpl.java:79) On the html page, the Ajax error shows: Ajax failure: Status 500 for /sql-library/delimitedtextviewer.loop.rowinjector:inject/1235082471277?t:formcomponentid=DelimitedTextViewer:formt:formid=form: java.lang.NullPointerExceptionCommunication with the server failed: java.lang.NullPointerException It's seems related to xml namespace, after I removed doctype and remove xmlns in html tag, the error disappeared, however, some other components look weird. Any ideas about it? Thanks, Yunhua On Fri, Dec 12, 2008 at 5:08 AM, zack1403 zack.mann...@gmail.com wrote: When following the documentation for ajaxformloop to the t, I am getting this error when trying to add a row. The only difference is that I am implementing the value encoder as a service: Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException [at classpath:com/inavero/pulse/pages/survey/ManageQuestions.tml, line 37, column 85] at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.invoke(ComponentPageElementImpl.java:932) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access$200(ComponentPageElementImpl.java:50) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$11.render(ComponentPageElementImpl.java:356) at org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:72) ... 107 more Caused by: java.lang.NullPointerException at org.apache.tapestry5.corelib.components.AjaxFormLoop$1.addRemoveRowTrigger(AjaxFormLoop.java:157) at org.apache.tapestry5.corelib.components.RemoveRowLink.beginRender(RemoveRowLink.java:54) at org.apache.tapestry5.corelib.components.RemoveRowLink.beginRender(RemoveRowLink.java) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$11$1.run(ComponentPageElementImpl.java:352) at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.invoke(ComponentPageElementImpl.java:917) Any thoughts? -- View this message in context: http://www.nabble.com/NPE-with-ajax-form-loop-tp20972086p20972086.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 - To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org