RE: [T4.0.2][Tacos 4.0.1] Problem submitting a form with Tacos in FireFox
I've seen this happen to me on IE and Firefox. With me it's usually some javascript error, most of the time related to an ajax tag that javascript can't find. Take a look at Firefox's javascript error console to see if it'll shed some light. It always solves it for me. Denis -Original Message- From: Jacob Bergoo [mailto:[EMAIL PROTECTED] Sent: segunda-feira, 7 de maio de 2007 11:17 To: users@tapestry.apache.org Subject: [T4.0.2][Tacos 4.0.1] Problem submitting a form with Tacos in FireFox Hi, I am new to Tacos and I have built my first page with a couple of Tacos/Dojo components. I have a issue with the AjaxSubmit in FireFox. When I try to submit my form nothing happens unless I click the submit button 4 times in a row... then the form get submittet. Has anybody notice this behavior before? It works just fine in IE... one click one submit... Thanks for any help, Jacob -- View this message in context: http://www.nabble.com/-T4.0.2--Tacos-4.0.1--Problem-submitting-a-form-with-T acos-in-FireFox-tf3703986.html#a10358154 Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Inject EJB 3 into Tapestry 4 page
I sent an e-mail a few weeks ago asking about injecting EJBs in tapestry pages. I found a way to do it, so I'm sharing it with the list since there were other people interested. It's really very easy. All you have to do is create a hivemind object provider that will supply you with the information you want. Something like this: public class EJBObjectProvider implements ObjectProvider { public Object provideObject(Module module, Class propertyType, String locator, Location location) { return jndiLookup(locator); } } This is a bit simplified. In my case I use a caching mechanism to save on jndi lookups. Then you have to tell hivemind about your new object provider by adding to you hivemodule.xml: I'm also injecting an application state manager for my own logic, but you can use anything here. Also add the following: That's it. Now you can inject any EJBs by simply adding something like this in your page or component: @InjectObject("ejb:myBeanJndiName") public abstract MyBean getMyBean(); I hope it was helpful. I really don't know that much about hivemind use so it took me some tapestry source code exploring to figure this one out. I welcome any suggestions on how to improve this. Cheers, Denis -Original Message- From: Bastian Voigt [mailto:[EMAIL PROTECTED] Sent: quarta-feira, 20 de dezembro de 2006 13:40 To: Tapestry users Cc: Denis Souza Subject: Re: Inject EJB 3 into Tapestry 4 page Hi, did you find out anything? I am having the same problem. Regards Bastian Voigt On Monday 18 December 2006 21:44, Denis Souza wrote: > That's just about what I need, but for EJB 3. This service seems to assume > EJB 2.x since it requires a home interface. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Inject EJB 3 into Tapestry 4 page
No, nothing. I didn't look very far since it's not critical for me. I'm thinking that I could eventually write a hivemind service that wraps any EJB I need. It wouldn't be as clean, but it would be enough, at least in my case. Denis -Original Message- From: Bastian Voigt [mailto:[EMAIL PROTECTED] Sent: quarta-feira, 20 de dezembro de 2006 13:40 To: Tapestry users Cc: Denis Souza Subject: Re: Inject EJB 3 into Tapestry 4 page Hi, did you find out anything? I am having the same problem. Regards Bastian Voigt On Monday 18 December 2006 21:44, Denis Souza wrote: > That's just about what I need, but for EJB 3. This service seems to assume > EJB 2.x since it requires a home interface. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Inject EJB 3 into Tapestry 4 page
That's just about what I need, but for EJB 3. This service seems to assume EJB 2.x since it requires a home interface. Thanks anyway, Denis -Original Message- From: Norbert Sándor [mailto:[EMAIL PROTECTED] Sent: segunda-feira, 18 de dezembro de 2006 16:57 To: Tapestry users Subject: Re: Inject EJB 3 into Tapestry 4 page Take a look at http://hivemind.apache.org/hivemind-lib/EJBProxyFactory.html Denis Souza írta: > Anyone know how I can inject a stateless EJB into a tapestry page? Is it > possible to do this with hivemind? > > > > Thanks in advance, > > Denis > > > > > > No virus found in this incoming message. > Checked by AVG Free Edition. > Version: 7.5.432 / Virus Database: 268.15.23/591 - Release Date: 2006.12.17. 15:17 > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Inject EJB 3 into Tapestry 4 page
Anyone know how I can inject a stateless EJB into a tapestry page? Is it possible to do this with hivemind? Thanks in advance, Denis
RE: Moving Components inside a Border Component...
It might help if you post some code and the actual exception (you only posted the stack trace). -Original Message- From: Thx1011 [mailto:[EMAIL PROTECTED] Sent: quinta-feira, 14 de dezembro de 2006 11:00 To: users@tapestry.apache.org Subject: Re: Moving Components inside a Border Component... Hi! Thanks for your help, but I think that this is not quite the problem that I have... Let's suppose one component named XPTO, that takes one parameter PARM. So in my "normal" Home page I use it like this: This is ok, I think. Now I move that line to inside the HTML new component named Border. So my Home page becomes: And Inside the new Border HTML, I put the same line above: What happens now is that I get an exception saying that can't parse the OGNL Expression I've moved the property accessors to the Border.java, but still it doesn't work. The exception is: # ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:123) # ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1616) # ognl.ASTProperty.getValueBody(ASTProperty.java:96) # ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170) # ognl.SimpleNode.getValue(SimpleNode.java:210) # ognl.Ognl.getValue(Ognl.java:333) # ognl.Ognl.getValue(Ognl.java:310) So what I'm missing? I really can't figure it out... Ron Piterman-2 wrote: > > you put it in the template of the component, and thats it. > if you want it to be configured from the page/container you use > parameter chain. > > for example: > > your border might contain (and probably will): > > ... > > since the title is different in every page you add > a title parameter to your border: > > @Parameter(required=true) public abstract String getTitle(); > > and when using the border: > > > > the title will be "passed through" to the shell. > > Quite easy :) > > Cheers, > Ron > > > This High Xvision wrote: >> Hi! (I'm a newbie, so please bear with me...) >> >> I'm trying to build a Border Component. >> >> So far so good, it works as long as I don't embed >> another component. >> >> For example if on my Home.Html page I add >> >> >> http://new.mail.yahoo.com >> >> - >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > -- View this message in context: http://www.nabble.com/Moving-Components-inside-a-Border-Component...-tf28199 68.html#a7871990 Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: "External" POST
Thanks! That's where I was headed. I got as far as noticing that request context was deprecated so I was still looking for another solution. Anyway, I'll give that a try, so now I'm trying to find out how to inject the HttpServletRequest object, but I can't seem to remember exactly what to write on the @Inject parameter. Can anyone point me to documentation on this. I recall there was a hivemind registry page that showed everything you can inject into tapestry but I can't find it. The link I had to it is now a page not found error. Thanks, Denis -Original Message- From: Shing Hing Man [mailto:[EMAIL PROTECTED] Sent: terça-feira, 28 de novembro de 2006 19:18 To: Tapestry users Subject: Re: "External" POST I think you can 'post' to a a Tapestry page that implements the inteface org.apache.tapestry.IExternalPage The interface IExternalPage has a method activateExternalPage(java.lang.Object[] parameters, IRequestCycle cycle) In Tapestry 3, you can retrieve the submitted parameters in method activateExternalPage : cycle.getRequestContext().getParameter("parameterName"); In Tap4, cycle.getRequestContext() is deprecated, you might have to inject RequestContext (or maybe HttpServletRequest) into your page. Shing --- Denis Souza <[EMAIL PROTECTED]> wrote: > Hi, > > > > I'm having a problem integrating with a 3rd party. > The thing is they have > this system that sends me an http POST with some > data in it. I can chose the > url to which the post is sent, but I can't chose how > they set up the data. > It's very standard procedure to them and they won't > change it. > > > > If this was a GET, I could just create a page that > supports "external" > requests, write an encoder for the url so I could > read the parameters and > everything would be fine, but since it's a POST I > don't know how I could do > it in Tapestry. Is there a way I can read any post > with random data in > Tapestry? The last thing I want to do is to manually > get the request info > and decode the post message. > > > > Thanks in advance, > > Denis Souza > > Home page : http://uk.geocities.com/matmsh/index.html Send instant messages to your online friends http://uk.messenger.yahoo.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
"External" POST
Hi, I'm having a problem integrating with a 3rd party. The thing is they have this system that sends me an http POST with some data in it. I can chose the url to which the post is sent, but I can't chose how they set up the data. It's very standard procedure to them and they won't change it. If this was a GET, I could just create a page that supports "external" requests, write an encoder for the url so I could read the parameters and everything would be fine, but since it's a POST I don't know how I could do it in Tapestry. Is there a way I can read any post with random data in Tapestry? The last thing I want to do is to manually get the request info and decode the post message. Thanks in advance, Denis Souza
RE: intermittent Runtime exception
The exception really doesn't tell me much, but from what you said, it might be some problem related to concurrent execution. I had something similar happen. The page the user was loading generated multiple requests to the same application through the same session. Because of the way it was implemented, it just couldn't handle the multiple simultaneous requests. So I implemented a WebRequestServiceFilter that makes sure requests coming from the same user are executed sequentially. Something like this: public void service(WebRequest request, WebResponse response, WebRequestServicer servicer) throws IOException { if (request.getSession(true).getAttribute("synchronizeObject") == null) { request.getSession(true).setAttribute("synchronizeObject", new Object()); } synchronized (request.getSession(true).getAttribute("synchronizeObject")) { servicer.service(request, response); } } I don't know if it would solve it for you, but you could try it. Denis Souza -Original Message- From: Lee Schumacher [mailto:[EMAIL PROTECTED] Sent: segunda-feira, 27 de novembro de 2006 18:58 To: users@tapestry.apache.org Subject: intermittent Runtime exception I'm seeing an exception page that only happens if i hit reload multiple times in succession very quickly - the page looks fine otherwise. I'm running tapestry 4.0.1 on solaris, jdk 1.5.0_06. Any ideas? org.apache.hivemind.ApplicationRuntimeException Could not find a strategy instance for class monitor.hub.data.BlockedUriRule . java.lang.IllegalArgumentException Could not find a strategy instance for class monitor.hub.data.BlockedUriRule . Stack Trace: * org.apache.hivemind.lib.util.StrategyRegistryImpl.searchForAdaptor( StrategyRegistryImpl.java:176) * org.apache.hivemind.lib.util.StrategyRegistryImpl.getStrategy( StrategyRegistryImpl.java:74) * org.apache.tapestry.util.io.DataSqueezerImpl.squeeze(DataSqueezerImpl.java :125) * $DataSqueezer_10ef24cbf8d.squeeze($DataSqueezer_10ef24cbf8d.java) * org.apache.tapestry.components.ForBean.getStringRepFromValue<http://org.apac he.tapestry.components.forbean.getstringrepfromvalue/> (ForBean.java:397) * org.apache.tapestry.components.ForBean<http://org.apache.tapestry.components .forbean/> $StoreSourceDataIterator.next(ForBean.java:365) * org.apache.tapestry.components.ForBean.renderComponent<http://org.apache.tap estry.components.forbean.rendercomponent/> (ForBean.java:125) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) * org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java :434) * org.apache.tapestry.form.FormSupportImpl.render(FormSupportImpl.java:494) * org.apache.tapestry.form.Form.renderComponent(Form.java:250) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) * org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java :434) * org.apache.tapestry.html.Body.renderComponent(Body.java:129) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) * org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java :434) * org.apache.tapestry.html.Shell.renderComponent(Shell.java:115) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) * org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:92) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617) * org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:275) * org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:366) * org.apache.tapestry.services.impl.ResponseRendererImpl.renderResponse( ResponseRendererImpl.java:71) * $ResponseRenderer_10ef24cbfad.renderResponse($ResponseRenderer_10ef24cbfad.j ava) * org.apache.tapestry.engine.PageService.service(PageService.java:68) * $IEngineService_10ef24cc019.service($IEngineService_10ef24cc019.java) * org.apache.tapestry.services.impl.EngineServiceOuterProxy.service( EngineServiceOuterProxy.java:66) * org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:248) * org.apache.tapestry.services.impl.InvokeEngineTerminator.service( InvokeEngineTerminator.java:60) * $WebRequestServicer_10ef24cbff5.service($WebRequestServicer_10ef24cbff5.java ) * $WebRequestServicer_10ef2 - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: T4.1 problem
Try configuring friendly URLs: http://tapestry.apache.org/tapestry4.1/usersguide/friendly-urls.html If you follow the example on the link it should intercept anything with an html extension. Denis -Original Message- From: Davor Hrg [mailto:[EMAIL PROTECTED] Sent: quarta-feira, 18 de outubro de 2006 16:02 To: Tapestry users Subject: Re: T4.1 problem if Home.html is in WEB-INF, tapestry doesn't connect with the class, if Home.html is in context, tapestry connects it with the class, but .html source is downloadable by entering http://localhost:8000/ponpon/Home.html :(:(:( Davor Hrg http://java.sun.com/xml/ns/j2ee"; xmlns:xsi="http://www.w3.org/TR/xmlschema-1/"; xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"; version="2.4"> ponpon ponpon org.apache.tapestry.ApplicationServlet 1 ponpon /app On 10/18/06, James Carman <[EMAIL PROTECTED]> wrote: > > The servlet engine won't allow the source to be downloaded via URL, > because > your tapestry servlet will intercept the request (assuming you've mapped > it > correctly). > > On 10/18/06, Davor Hrg <[EMAIL PROTECTED]> wrote: > > > > It makes all the difference in my project. > > I moved Home.html into WEB-INF > > and it didnt work > > I moved it back into context > > and it worked > > I restarted tomcat each time > > > > finaly, my web app is not packed as .war, > > it is a folder in webapps in tomcat. > > > > another problem is when Home.html is in context dir > > the source of it can be downloaded via url > > > > > > > > Davor Hrg > > > > On 10/18/06, James Carman <[EMAIL PROTECTED]> wrote: > > > > > > I don't think that makes a difference. Here's my .application file > > (with > > > package names changed to protect the innocent): > > > > > > > > "-//Apache Software Foundation//Tapestry Specification 4.0 > //EN" > > > "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd";> > > > > > > > > > > > > > > > > > specification-path="/org/apache/tapestry/contrib/Contrib.library"/> > > > > > > > > > On 10/18/06, Denis Souza <[EMAIL PROTECTED]> wrote: > > > > > > > > I don't know if it actually makes a difference, but I use it in my > > > > .application a little bit different: > > > > > > > > I guess it wouldn't hurt to try: > > > > > > > > > > > > hr.hrg.ponpon > > > > > > >> > > key="org.apache.tapestry.component-class-packages">hr.hrg.ponpon > > > > > > > > > > > > > > Denis > > > > > > > > -Original Message- > > > > From: Davor Hrg [mailto:[EMAIL PROTECTED] > > > > Sent: quarta-feira, 18 de outubro de 2006 10:55 > > > > To: Tapestry users > > > > Subject: Re: T4.1 problem > > > > > > > > nope, > > > > I must be doing something very wrong, > > > > just tried it in T4.0 and it also doesn't work > > > > > > > > here is web.xml > > > > > > > > http://java.sun.com/xml/ns/j2ee"; > > > > xmlns:xsi="http://www.w3.org/TR/xmlschema-1/"; > > > > xsi:schemaLocation=" > > > > http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"; > > > > version="2.4"> > > > > > > > > ponpon > > > > > > > > ponpon > > > > org.apache.tapestry.ApplicationServlet > > > > > > > > 1 > > > > > > > > > > > > ponpon > > > > /app > > > > > > > > > > > > > > > > ponpon.application > > > > > > > > > > > "-//Apache Software Foundation//Tapestry Specification 4.0//EN" > > > > "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd";> > > > > > > > > > > > > > > > > > > > > > > > > > > > > On 10/18/06, Dennis Sinelnikov <[EMAIL PROTECTED]> > > > wrote: > > > > > > > > > > Try '.' instead of '/' > >
RE: T4.1 problem
Maybe you're looking in the wrong place. Maybe the problem is not where you're placing the .java class but where you're placing the .html template. I never use .page files and misplacing an html template gives me exactly the same error as you're getting. Make sure your html file is just inside your context directory right alongside the WEB-INF directory. Unfortunately, in Tapestry, you can't configure the directory where you place your .html files (at least not in an easy way). Denis -Original Message- From: Davor Hrg [mailto:[EMAIL PROTECTED] Sent: quarta-feira, 18 de outubro de 2006 14:43 To: Tapestry users Subject: Re: T4.1 problem sorry for spamming the list ... I used in home .java @InjectMeta("org.apache.tapestry.page-class-packages") public abstract String getTest(); then I put in the template || and got out: |hr.hrg.ponpon| On 10/18/06, Davor Hrg <[EMAIL PROTECTED]> wrote: > > I tried > hr.hrg.ponpon > > but no reluts still > > i put back the Home.page > > "-//Apache Software Foundation//Tapestry Specification 4.0//EN" > "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd "> > > > and it works now, > so classes are where supposed to be, Home.html is ok > annotations work in the Home.java > > but the problem persists still when I remove Home.page > > what line of code is to get > org.apache.tapestry.page-class-packages > value so I can print it to sys.out > > > On 10/18/06, Denis Souza <[EMAIL PROTECTED]> wrote: > > > > I don't know if it actually makes a difference, but I use it in my > > .application a little bit different: > > > > I guess it wouldn't hurt to try: > > > > > > hr.hrg.ponpon > > > >> key="org.apache.tapestry.component-class-packages">hr.hrg.ponpon > > > > > > Denis > > > > -Original Message- > > From: Davor Hrg [mailto: [EMAIL PROTECTED] > > Sent: quarta-feira, 18 de outubro de 2006 10:55 > > To: Tapestry users > > Subject: Re: T4.1 problem > > > > nope, > > I must be doing something very wrong, > > just tried it in T4.0 and it also doesn't work > > > > here is web.xml > > > > http://java.sun.com/xml/ns/j2ee"; > > xmlns:xsi=" http://www.w3.org/TR/xmlschema-1/"; > > xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd > > " > > version="2.4"> > > > > ponpon > > > > ponpon > > org.apache.tapestry.ApplicationServlet > > > > 1 > > > > > > ponpon > > /app > > > > > > > > ponpon.application > > > > > "-//Apache Software Foundation//Tapestry Specification 4.0 //EN" > > "http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd";> > > > > > > > > > > > > > > On 10/18/06, Dennis Sinelnikov < [EMAIL PROTECTED]> > > wrote: > > > > > > Try '.' instead of '/' > > > > > > > > > Dennis > > > > > > Davor Hrg wrote: > > > > Is there an known issue with > > > > org.apache.tapestry.page-class-packages > > > > in T4.1 > > > > > > > > I don't seem to get it right, > > > > I have a simple app and trying to get rid of > > > > th pesky .page and use annotations > > > > . > > > > Just tried with Home.page > > > > > > > > org.apache.tapestry.PageNotFoundException > > > > Page 'Home' not found in application namespace. > > > > > > > > - > > org.apache.tapestry.resolver.PageSpecificationResolverImpl.resolve( > > > > PageSpecificationResolverImpl.java:147) > > > > - > > > > > > > > > > > $PageSpecificationResolver_10e5b5b91b0.resolve($PageSpecificationResolver_10 > > e5b5b91b0.java) > > > > > > > > > > > > - > > > > > > > > > $PageSpecificationResolver_10e5b5b91b1.resolve($PageSpecificationResolver_10 > > > > e5b5b91b1.java) > > > > > > > > > > > > - org.apache.tapestry.pageload.PageSource.getPage(PageSource.java > > :112) > > > > > > > > - $IPageSource_10e5b5b9116.getPage($IPageSource_10e5b5b9116.java) > > > > - $IPageSource_10e5b5b9115.getPage($IPageSource_10e5b5b9115.java) > > > > - org.apache.tapestry.engine.RequestCycle.loadPage( > > RequestCycle.java > > > :241) > > > > > > > > - --- > > > > > > > > I tried both .application > > > > > > > > > > > value="hr/hrg/ponpon"/> > > > > > > > value="hr/hrg/ponpon"/> > > > > > > > > > > > > and web.xml > > > > > > > > org.apache.tapestry.page-class-packages > > > > > > >hr.hrg.ponpon > > > > > > > > > > > > but no effect > > > > > > > > > > > > Davor Hrg > > > > > > > > > > > > > - > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > - > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: T4.1 problem
I don't know if it actually makes a difference, but I use it in my .application a little bit different: I guess it wouldn't hurt to try: hr.hrg.ponpon hr.hrg.ponpon Denis -Original Message- From: Davor Hrg [mailto:[EMAIL PROTECTED] Sent: quarta-feira, 18 de outubro de 2006 10:55 To: Tapestry users Subject: Re: T4.1 problem nope, I must be doing something very wrong, just tried it in T4.0 and it also doesn't work here is web.xml http://java.sun.com/xml/ns/j2ee"; xmlns:xsi="http://www.w3.org/TR/xmlschema-1/"; xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"; version="2.4"> ponpon ponpon org.apache.tapestry.ApplicationServlet 1 ponpon /app ponpon.application http://jakarta.apache.org/tapestry/dtd/Tapestry_4_0.dtd";> On 10/18/06, Dennis Sinelnikov <[EMAIL PROTECTED]> wrote: > > Try '.' instead of '/' > > > Dennis > > Davor Hrg wrote: > > Is there an known issue with > > org.apache.tapestry.page-class-packages > > in T4.1 > > > > I don't seem to get it right, > > I have a simple app and trying to get rid of > > th pesky .page and use annotations > > . > > Just tried with Home.page > > > > org.apache.tapestry.PageNotFoundException > > Page 'Home' not found in application namespace. > > > > - org.apache.tapestry.resolver.PageSpecificationResolverImpl.resolve( > > PageSpecificationResolverImpl.java:147) > > - > > > $PageSpecificationResolver_10e5b5b91b0.resolve($PageSpecificationResolver_10 e5b5b91b0.java) > > > > > > - > > > $PageSpecificationResolver_10e5b5b91b1.resolve($PageSpecificationResolver_10 e5b5b91b1.java) > > > > > > - org.apache.tapestry.pageload.PageSource.getPage(PageSource.java:112) > > > > - $IPageSource_10e5b5b9116.getPage($IPageSource_10e5b5b9116.java) > > - $IPageSource_10e5b5b9115.getPage($IPageSource_10e5b5b9115.java) > > - org.apache.tapestry.engine.RequestCycle.loadPage(RequestCycle.java > :241) > > > > - --- > > > > I tried both .application > > > > > value="hr/hrg/ponpon"/> > > > value="hr/hrg/ponpon"/> > > > > > > and web.xml > > > >org.apache.tapestry.page-class-packages > > >hr.hrg.ponpon > > > > > > but no effect > > > > > > Davor Hrg > > > > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: LoginPage problem in T4
Actually, that makes perfect sense. That's exactly how my Login page works. I had thought about the recursive problem and had also created a way to avoid this, but my method was buggy. Since you mentioned it I thought I should check it out and I fixed it. Thanks for your help! Denis -Original Message- From: Ryan Holmes [mailto:[EMAIL PROTECTED] Sent: quarta-feira, 18 de outubro de 2006 01:50 To: Tapestry users Subject: Re: LoginPage problem in T4 I'm not familiar with that exact error but if that pageValidate method is in your Login page (or it's superclass, etc.), then you're creating a sort of recursive condition where activating the Login page when the user is not logged in will redirect back to the Login page. The Vlib app uses @Meta annotations to specifically mark the Login page as "anonymous" and the pageValidate() method is supposed to allow access in that case rather than redirect. The above may be way off base since I can't see your superclass or more of your code... -Ryan On Oct 17, 2006, at 12:11 PM, Denis Souza wrote: > Hi, > > > > I'm trying to implement a login page using VLib's mechanism so I > implemented > PageValidationListener in my page's superclass with the following: > > > > public void pageValidate(PageEvent event) { > >if (!isUserLoggedIn()) { > > LoginPage login = getLoginPage(); > > login.setCallback(new PageCallback(this)); > > throw new PageRedirectException(login); > >} > > } > > > > Very simple. Actually looks just like the VLib example, however I'm > getting > the following exception before I get to the login page: > > > > A validate cycle during page activation was detected: LoginPage; > LoginPage. > > > > Anyone knows what it means and how to fix it? > > > > I even tried using the PageBeginRenderListener instead but what > happens is > the PageRedirectException actually gets thrown! It's not caught by > tapestry > and the page is not redirected. Any ideas? > > > > Thanks > > Denis > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
LoginPage problem in T4
Hi, I'm trying to implement a login page using VLib's mechanism so I implemented PageValidationListener in my page's superclass with the following: public void pageValidate(PageEvent event) { if (!isUserLoggedIn()) { LoginPage login = getLoginPage(); login.setCallback(new PageCallback(this)); throw new PageRedirectException(login); } } Very simple. Actually looks just like the VLib example, however I'm getting the following exception before I get to the login page: A validate cycle during page activation was detected: LoginPage; LoginPage. Anyone knows what it means and how to fix it? I even tried using the PageBeginRenderListener instead but what happens is the PageRedirectException actually gets thrown! It's not caught by tapestry and the page is not redirected. Any ideas? Thanks Denis
RE: Alternate way to @EventListener with java 1.4
I don't know if you can use it in Tap 4.1 but tacos 4 has a "AjaxEventSubmit" component that does something similar. I'm not sure it does everything @EventListener does, but maybe it's enough for what you need. -Original Message- From: Numa Schmeder [mailto:[EMAIL PROTECTED] Sent: quinta-feira, 21 de setembro de 2006 11:39 To: Tapestry users Subject: Alternate way to @EventListener with java 1.4 Hello, Is there a way if you are using java 1.4 to have a similar functionality to @EventListener. I am developing a new application and i would like to go with tap 4.1 but this application will run on java 1.4 so i can't use annotations, but i would really like to have a similar functionality to @EventListener. Thanks Numa http://www.le-voyage.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Re: Tacos MenuBar and Ajax
Done! It works now in firefox as well as it does in IE. Thanks you all! Here's the js function I changed in the DojoMenuBar2.script file: dojo.addOnLoad(function() { if(dojo.byId("${componentId}")!=null){ var menuBar = dojo.widget.createWidget("MenuBar2", {contextMenuForWindow:${contextMenu}}, dojo.byId("${componentId}")); var menuItem; menuItem = dojo.widget.createWidget("MenuBarItem2", {submenuId:"${item.menuId}", caption:"${item.caption}",disabled:${item.disabled}}); menuBar.addChild(menuItem, false, "insertAtIndex", null, ${count}); } else { var menuBar = dojo.byId("${componentId}"); var menuItem; } }); -Original Message- From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] Sent: terça-feira, 19 de setembro de 2006 14:56 To: Tapestry users Subject: Re: Re: Tacos MenuBar and Ajax To answer number 2, yes. That's what the component should have been doing the whole time. On 9/19/06, Denis Souza <[EMAIL PROTECTED]> wrote: > > Well, I suppose I just got lucky since the only two dojo widgets that I've > used from Tacos were exactly the MenuBar and the TabContainer ;) > I finally gave up on since I didn't really *need* it, just would be nice > to > have it. > I agree, MenuBar leaves much to be desired but since in my case it's use > will be limited it was a very cost-effective solution, really easy to > implement. I got my whole menu structure working in a few minutes (well, > except for the ajax part). > > About sam's e-mail, 2 things: > 1) I saw the bug in IE in which the menu items appear at the very top. > From > what I could test it happens because the menu items are always placed at > the > beginning of their parent tags, for instance: > > > ... some stuff here > My menu here > > This wouldn't work because the menu items would appear at the same place > as > the other stuff. A workaround would be: > > > ... some stuff here > > > My menu here > > At least worked for me... > > 2) I'm not sure I fully understand the menubar/ajax problem. I thought the > problem was that the request was executing the javascript code again, when > it shouldn't, thus creating a new menubar. I searched the Tacos dev list > like you told me to find a "new dojo tapestry widgets" thread but I really > wasn't very much enlightened by it. > Anyway, please correct me if I'm wrong. I looked at the Tacos source code > and the way I see it now, in order to make it work, I'd have to replace > the > DojoMenuBar2 component with a slightly altered version that will check if > the menu (with the same name) already exists before creating it, i.e., not > call dojo.widget.CreateWidget when it's not necessary. > I'm no expert on javascript, and I don't know exactly if that's what you > were thinking. Any ideas? > > Denis > > > -Original Message- > From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] > Sent: segunda-feira, 18 de setembro de 2006 21:54 > To: Tapestry users > Subject: Re: Re: Tacos MenuBar and Ajax > > Two small thoughts on this. > > -) WRT the javascript not getting executed, this is annoying but not > really > a "bug" in dojo. If you look at some of the other tacos components you'll > find that their script templates use the ResponseBuilder to determine if > they are in an ajax request and respond appropriately..(Ie either execute > immediately or execute upon window/package load depending..) > > -) The Menu widget ~is~ horribly slow..It was written by some of the same > people involved in writing the TabContainer. I hope it doesn't give people > a > bad impression of dojo devs as this is only one part of the community. I > recently added a new "tab like" widget which should be extremely fast..It > can do a lot more than just "tabs" as it is very generic, but there is at > least an alternative. . > > > http://archive.dojotoolkit.org/nightly/tests/widget/test_RadioGroup_tabs.htm > l > > In fact - the same widget could probably handle dynamic menus + tabs with > equal ease as it's based on a UL/OL and css class names. No images/css > templates/etc are loaded by the widget. It works completely off of what > you > give it so there shouldn't be any hidden css behaviour to drive you nuts. > > > On 9/18/06, Sam Gendler <[EMAIL PROTECTED]> wrote: > > > > Yeah. Currently, the dojo components don't handle ajax updates well. > > I was new to tacos and wasn't aware of the problem until I wrote code > > that triggers it. Due to the nature of the structure of our page,
RE: Re: Tacos MenuBar and Ajax
Well, I suppose I just got lucky since the only two dojo widgets that I've used from Tacos were exactly the MenuBar and the TabContainer ;) I finally gave up on since I didn't really *need* it, just would be nice to have it. I agree, MenuBar leaves much to be desired but since in my case it's use will be limited it was a very cost-effective solution, really easy to implement. I got my whole menu structure working in a few minutes (well, except for the ajax part). About sam's e-mail, 2 things: 1) I saw the bug in IE in which the menu items appear at the very top. From what I could test it happens because the menu items are always placed at the beginning of their parent tags, for instance: ... some stuff here My menu here This wouldn't work because the menu items would appear at the same place as the other stuff. A workaround would be: ... some stuff here My menu here At least worked for me... 2) I'm not sure I fully understand the menubar/ajax problem. I thought the problem was that the request was executing the javascript code again, when it shouldn't, thus creating a new menubar. I searched the Tacos dev list like you told me to find a "new dojo tapestry widgets" thread but I really wasn't very much enlightened by it. Anyway, please correct me if I'm wrong. I looked at the Tacos source code and the way I see it now, in order to make it work, I'd have to replace the DojoMenuBar2 component with a slightly altered version that will check if the menu (with the same name) already exists before creating it, i.e., not call dojo.widget.CreateWidget when it's not necessary. I'm no expert on javascript, and I don't know exactly if that's what you were thinking. Any ideas? Denis -Original Message- From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] Sent: segunda-feira, 18 de setembro de 2006 21:54 To: Tapestry users Subject: Re: Re: Tacos MenuBar and Ajax Two small thoughts on this. -) WRT the javascript not getting executed, this is annoying but not really a "bug" in dojo. If you look at some of the other tacos components you'll find that their script templates use the ResponseBuilder to determine if they are in an ajax request and respond appropriately..(Ie either execute immediately or execute upon window/package load depending..) -) The Menu widget ~is~ horribly slow..It was written by some of the same people involved in writing the TabContainer. I hope it doesn't give people a bad impression of dojo devs as this is only one part of the community. I recently added a new "tab like" widget which should be extremely fast..It can do a lot more than just "tabs" as it is very generic, but there is at least an alternative. . http://archive.dojotoolkit.org/nightly/tests/widget/test_RadioGroup_tabs.htm l In fact - the same widget could probably handle dynamic menus + tabs with equal ease as it's based on a UL/OL and css class names. No images/css templates/etc are loaded by the widget. It works completely off of what you give it so there shouldn't be any hidden css behaviour to drive you nuts. On 9/18/06, Sam Gendler <[EMAIL PROTECTED]> wrote: > > Yeah. Currently, the dojo components don't handle ajax updates well. > I was new to tacos and wasn't aware of the problem until I wrote code > that triggers it. Due to the nature of the structure of our page, > however, the extra menu bar shows up in a part of the page which is > never visible, so I've been able to ignore it during a schedule > crunch. We've almost released, after which I can devote some time to > improving all the dojo widgets I contributed. The others all send > javascript during ajax requests, even when not being updated, but > because of the way I structured them, the 2nd javascript just doesn't > do anything. Andreas or Jesse described a fix to me on the tacos-dev > mailing list, if you want to search for it. It shouldn't be too > difficult to fix (just search for 'sgendler'). > > Personally, I find that the menubar, as implemented in dojo, leaves a > TON to be desired. It renders itself really slowly and causes massive > delays in the rendering of other dojo code on the page. It also shows > all menu items stacked on top of each other before finally spreading > them out, and in IE, if your menu isn't at the very top of the page, > the menu items appear at the very top of the page until you mouse over > the area where they are supposed to be, at which point, they drop down > to where they are supposed to be. In short, it is basically > unworkably in a production quality app. We finally ditched it for a > CSS solution which is about 1,000 times faster. Incidentally, those > are all dojo issues, not tap/tacos ones. The same problems occur in > our page mockups. >
Tacos MenuBar and Ajax
Hi, I'm using Tacos' DojoMenuBar component to create a menu in my application but whenever I use ajax on the same page as the menu I get strange behavior in Firefox 1.5 (IE 6 works fine). After the ajax request loads another menu, identical to the original, is created near the updated part of the page. I'm guessing Firefox is executing all "onload" javascript methods after each ajax request, thus, repeating the menu creation. Anyone know if there's an easy way out of this? Denis
RE: Asynchronous form submission
I guess you can always refresh the entire table. I do it in one of my pages and it works pretty well. The downside is that on a really large table it would defeat part of the purpose of using ajax in the first place since it wouldn't be so efficient. -Original Message- From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] Sent: terça-feira, 12 de setembro de 2006 13:39 To: Tapestry users Subject: Re: Asynchronous form submission Does the server return valid html in your areas though? FireBug or tapestry browser debug (via Shell) should be able to show you this. Either way I don't think you can add tr elements like this in IE anyways..You'd have to do it through the dom interface. On 9/12/06, Vinicius Carvalho <[EMAIL PROTECTED]> wrote: > > Hum, thanks Denis, that almos did the trick :) > > I guess the updateComponent does not work the way I expected, I was > misunderstanding it... > > Here's what's happening using Denis' solution: > Let's say the list was empty, so no rows are displayed on the table > ok. So the user add a row. Since the @Any is surrounding the > element, it writes the elements outside the tr, messing the whole > document format. So let's say the user leaves the page and comes back. > This time, when the for renders, it displays the values (ok expected > :) ) but a side effect comes when the user add another value, the > whole list is displayed on top of the previous. > I guess the whole problem I'm having is that I'm not being able to > refresh the for inner elements. > I'll keep trying different stuff here and let you know. > > Thanks for all the support > > On 9/12/06, Jesse Kuhnert <[EMAIL PROTECTED]> wrote: > > Ahh..Good call..You can also give For the "element" parameter to have it > > render itself as an html dom node. > > > > On 9/12/06, Denis Souza <[EMAIL PROTECTED]> wrote: > > > > > > I think the problem is the way that the "For" component renders. > You're > > > trying to update a component named "userList" where: > > > > > > value="ognl:userDetail"> > > > > > >... > > > > > > > > > > > > My guess is the for component is rendering it's body but not it's own > tag. > > > Usually the component's name is placed on the id property on the > > > component's > > > tag. When the ajax/js logic runs it looks for a tag which > id="userList". > > > In > > > this case it probably can't find "userList" because it's not there, > the > > > For > > > component didn't render it. > > > Try using wrapping another component around it and naming it > "userList". > > > I guess something like this would work: > > > > > > > > > > > element="tr"> > > >... > > > > > > > > > > > > -Original Message- > > > From: Vinicius Carvalho [mailto:[EMAIL PROTECTED] > > > Sent: terça-feira, 12 de setembro de 2006 11:42 > > > To: Tapestry users > > > Subject: Re: Asynchronous form submission > > > > > > Hum, thanks but nope. Didn't work either. I can't get the @For to get > > > updated. When I nested it inside an @Any, it almost work :). I mean > > > that because it only the last value inserted in the list is returned. > > > Even with the list being persisted to the session. > > > > > > Anyone done this before? > > > > > > > > > Regards > > > > > > On 9/12/06, Chaitanya Jeerage <[EMAIL PROTECTED]> wrote: > > > > not sure if the same applies to 4.1, but using "action" instead of > > > > "listener" in your form submit should solve the problem of list not > > > > being populated > > > > > > > > action="listener:formSubmit" > > > > > > > > instead of > > > > > > > > listener="listener:formSubmit" > > > > > > > > -Chaitanya > > > > > > > > On 9/12/06, Vinicius Carvalho <[EMAIL PROTECTED]> wrote: > > > > > Well the synchronous submission was fixed after I updated my > version > > > :P > > > But > > > > > I still get no updates on my list, event setting it as a > persistent > > > > > property. I'm adding value
RE: Asynchronous form submission
I think the problem is the way that the "For" component renders. You're trying to update a component named "userList" where: ... My guess is the for component is rendering it's body but not it's own tag. Usually the component's name is placed on the id property on the component's tag. When the ajax/js logic runs it looks for a tag which id="userList". In this case it probably can't find "userList" because it's not there, the For component didn't render it. Try using wrapping another component around it and naming it "userList". I guess something like this would work: ... -Original Message- From: Vinicius Carvalho [mailto:[EMAIL PROTECTED] Sent: terça-feira, 12 de setembro de 2006 11:42 To: Tapestry users Subject: Re: Asynchronous form submission Hum, thanks but nope. Didn't work either. I can't get the @For to get updated. When I nested it inside an @Any, it almost work :). I mean that because it only the last value inserted in the list is returned. Even with the list being persisted to the session. Anyone done this before? Regards On 9/12/06, Chaitanya Jeerage <[EMAIL PROTECTED]> wrote: > not sure if the same applies to 4.1, but using "action" instead of > "listener" in your form submit should solve the problem of list not > being populated > > action="listener:formSubmit" > > instead of > > listener="listener:formSubmit" > > -Chaitanya > > On 9/12/06, Vinicius Carvalho <[EMAIL PROTECTED]> wrote: > > Well the synchronous submission was fixed after I updated my version :P But > > I still get no updates on my list, event setting it as a persistent > > property. I'm adding values, and they are not being updated. As it is a > > persistent property I was hoping that re-loading the page would set it > > values, but they come blank again. > > > > Any hint? > > > > Regards > > > > On 9/11/06, Vinicius Carvalho <[EMAIL PROTECTED]> wrote: > > > > > > Hi there! I'm trying to get two things to work with Tapestryt 4.1 and > > > Ajax support: > > > > > > 1st a master detail form > > > 2nd a auto populated form from server (I'll explain it better) > > > > > > > > > The first one is pretty easy, but its reloading the entire page, I've > > > checked the list and saw some discussions about it, I tried but it > > > seems not to be working: > > > > > > > > title="AjaxForm" disableCaching="true"> > > > > > > > > updateComponents="ognl:{'userList'}"> > > > > > > > > > Name: > > > > > value="ognl:user.name"/> > > > > > > > > > Email: > > > > > value="ognl:user.email"/> > > > > > > > > > Age: > > > > > value="ognl:user.age > > > "/> > > > > > > > > listener="listener:formSubmit"/> > > > > > > > > > > > > > > > > > > > > style="background-color:aqua">Name > > > > > style="background-color:aqua">Email > > > Age > > > > > > > > source="ognl:users" > > > value="ognl:userDetail"> > > > > > > > > style="background-color:aqua"> > > value="ognl:userDetail.name"/> > > > > > style="background-color:aqua"> > > value="ognl:userDetail.email"/> > > > > > style="background-color:aqua"> > > value="ognl:userDetail.age"/> > > > > > > > > > > > > > > > > > > > > > public abstract class Home extends BasePage{ > > > @InitialValue("new java.util.ArrayList()") > > > public abstract List getUsers(); > > > @InitialValue("new com.mgjug.tapestry.model.User()") > > > public abstract User getUser(); > > > @InitialValue("new com.mgjug.tapestry.model.User()") > > > public abstract User getUserDetail(); > > > > > > public void formSubmit(IRequestCycle cycle){ > > > ResponseBuilder builder = cycle.getResponseBuilder(); > > > getUsers().add(getUser()); > > > } > > > > > > } > > > > > > I'm guessing the problem is withing the submit button that will submit > > > the form, bypassing any javascript. > > > > > > Another question is about the state of my list. Do i need to use a > > > persist model for that?
RE: should/is Tagestry getting rid of ognl?
Just wondering... why isn't this included in the Tapestry 4/4.1 distribution? -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: terça-feira, 29 de agosto de 2006 12:17 To: Tapestry users Subject: Re: should/is Tagestry getting rid of ognl? My understanding is that tap4, internally, uses ognl much less than before. In terms of binding properties, since tap4 lets you develop custom binding mechanisms, you could always write your own replacement and plug it in. But then, Howard's already done that. :) Take a look at http://howardlewisship.com/tapestry-javaforge/tapestry-prop/ It won't replace complex ognl expressions (things like: ognl:someList.{? bar=="baz"}, for instance), but it will do just fine for replacing simple property paths (foo.bar.baz) and is more performant than ognl. Robert > Hi there -- > > I saw this post > (http://www.theserverside.com/news/thread.tss?thread_id=41923) > over on theserverside. It was announcing Stripes 1.4. The original post > and > comments are all refering to what a dog ognl is from a performance > perspective. > > > So I got to ask the question is Tapestry going to chuck ognl as well? > > -Pat > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Re: RE: Tacos DojoTabs component
Just tried it. It does work better by setting the style with .dojoTabContainer since it makes the scrollbars appear when necessary (which wasn't happening otherwise and content ended up being hidden when it was more than could fit in a window), however I would still prefer if I didn't have to use a fixed height since my tabs have dynamic content. On tabs with a fixed height and a little more content, I end up with two scrollbars (one on the browser window itself and one on the tab) which isn't so good. Plus the style solution doesn't seem to be working in firefox. I get the same zero-height problem but can always test this page in IE until dojo is fixed. Thanks for your help. Denis -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Sam Gendler Sent: segunda-feira, 28 de agosto de 2006 15:51 To: Tapestry users Subject: Re: Re: RE: Tacos DojoTabs component that works even with a doctype, which is necessary for most users, since running in quirks mode can easily break other aspects of the page design. --sam On 8/28/06, Sam Gendler <[EMAIL PROTECTED]> wrote: > If you want to set an explicit height, you can still do that. Just > provide a css override for .dojoTabContainer in order to set the > height to a specific value. > > .dojoTabContainer { > width: 100%; > height: 450px; > } > > for example, although I recommend using a weaker selector than that, > by placing it in a div and then applying the value only to > .dojoTabCOntainer within that div. > > --sam > > > On 8/28/06, Denis Souza <[EMAIL PROTECTED]> wrote: > > It works! Thanks! > > > > Denis > > > > -Original Message- > > From: Marcus Matèrn [mailto:[EMAIL PROTECTED] > > Sent: segunda-feira, 28 de agosto de 2006 06:15 > > To: Tapestry users > > Subject: Re: Tacos DojoTabs component > > > > If I remember correctly. The way I solved this problem was by adding > > this workaround: > > doctype="" renderContentType="false" > > to your @Shell component. > > > > I am using Dojo directly (without Tacos) but it shouldn't matter. > > This is probably a bug in the current version of Dojo. > > I can't try it out at the moment. Let me know if this works for you. > > > > > > Marcus > > > > > > > > > > On 8/26/06, Denis Souza <[EMAIL PROTECTED]> wrote: > > > Anyone out there using Tacos' DojoTabs component? It seems that every time > > I > > > use it all my tabs have their height set to zero. I tried using Firefox > > 1.5 > > > and IE 6 and I get the same results on both. > > > > > > If I use Firefox's DOM inspector I can change the style to "height:auto" > > and > > > it looks fine (until I resize the window or click on another tab), but I > > > can't get it to work like that by default. The DOM Inspector shows that > > the > > > height style is actually explicitly set to zero. I tried setting the style > > > for the dojoTabPaneWrapper in my css file but it still doesn't work. I > > also > > > noticed that the same thing happens with the tabs in the Tacos live demo. > > > > > > > > > > > > Can anyone help me please? > > > > > > > > > > > > Thanks, > > > Denis > > > > > > > > > > > > > > > > > > > - > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > - > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Tacos DojoTabs component
It works! Thanks! Denis -Original Message- From: Marcus Matèrn [mailto:[EMAIL PROTECTED] Sent: segunda-feira, 28 de agosto de 2006 06:15 To: Tapestry users Subject: Re: Tacos DojoTabs component If I remember correctly. The way I solved this problem was by adding this workaround: doctype="" renderContentType="false" to your @Shell component. I am using Dojo directly (without Tacos) but it shouldn't matter. This is probably a bug in the current version of Dojo. I can't try it out at the moment. Let me know if this works for you. Marcus On 8/26/06, Denis Souza <[EMAIL PROTECTED]> wrote: > Anyone out there using Tacos' DojoTabs component? It seems that every time I > use it all my tabs have their height set to zero. I tried using Firefox 1.5 > and IE 6 and I get the same results on both. > > If I use Firefox's DOM inspector I can change the style to "height:auto" and > it looks fine (until I resize the window or click on another tab), but I > can't get it to work like that by default. The DOM Inspector shows that the > height style is actually explicitly set to zero. I tried setting the style > for the dojoTabPaneWrapper in my css file but it still doesn't work. I also > noticed that the same thing happens with the tabs in the Tacos live demo. > > > > Can anyone help me please? > > > > Thanks, > Denis > > > > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Tacos DojoTabs component
Anyone out there using Tacos' DojoTabs component? It seems that every time I use it all my tabs have their height set to zero. I tried using Firefox 1.5 and IE 6 and I get the same results on both. If I use Firefox's DOM inspector I can change the style to "height:auto" and it looks fine (until I resize the window or click on another tab), but I can't get it to work like that by default. The DOM Inspector shows that the height style is actually explicitly set to zero. I tried setting the style for the dojoTabPaneWrapper in my css file but it still doesn't work. I also noticed that the same thing happens with the tabs in the Tacos live demo. Can anyone help me please? Thanks, Denis
Possible bug in Tap 4.1 Ajax with forms
Hi, Now that Ajax with forms is working for me in Tapestry 4.1 I found what might be a bug. Consider this example: In this specific case I set updateComponents to update the form itself. Whenever I submit something the following error appears on my page: WARNING: 14:37:38: registerForm(myform) Form already registered. The next time I click submit the form is submitted normally, without ajax. Then it starts again. If I wrap a div around my form and try to update it, the same thing happens. What works is if I update "testajax" (in the example above) instead of updating the entire form. Anyway, I had noticed the same error message appear when I was doing some tests with @EventListener. The problem seemed to occur whenever I got more than one @EventListener to listen to an event that submits the same form. Tried it with tapestry the latest 4.1.1-20060822.234809-20 Anyone else seen this? Is this really a bug? Denis
RE: Async form in Tap4.1 does not work...
Yes, solved it for me too. Thanks Jesse! -Original Message- From: Pedro Viegas [mailto:[EMAIL PROTECTED] Sent: terça-feira, 22 de agosto de 2006 19:48 To: Tapestry users Subject: Re: Async form in Tap4.1 does not work... That solved it Jesse! It really was the cache. Guess those handy old SNAPSHOT JS scripts were in the way... obvious now that you pointed out! :-D By the way... on the undesired windows extra box subject, have you thought about VMWare? I use windows at home (argh... have to have it, don't ask why) but Ubunto Linux at work and solve the same necessity with VMWare... a VMWare windows instalation suspended takes 5 seconds to resume from file. Very nice solution. And you can have several test cases... only Mac OSX can't still be a VMWare machine! :-D maybe the day will still come... Thanks anyway... this is now officially 100% working! ;-) On 8/22/06, Jesse Kuhnert <[EMAIL PROTECTED]> wrote: > > What happens when you clear your browser cache? > > On 8/22/06, Denis Souza <[EMAIL PROTECTED]> wrote: > > > > I tested on both IE6 and Firefox 1.5 with the same results on both: > > Workbench demo works, but my own code does not. :( > > > > -Original Message- > > From: Pedro Viegas [mailto:[EMAIL PROTECTED] > > Sent: terça-feira, 22 de agosto de 2006 19:19 > > To: Tapestry users > > Subject: Re: Async form in Tap4.1 does not work... > > > > Got the bastard! It's a snicky little one! > > > > I also updated the last SNAPSHOT and the result are exactly the same. > > As Danis said, althought the Submit does not have the async parameters > the > > form does and so this should work. > > I tried the workbench demo link Jesse provided but it behaves preciselly > > like we are describing. It issues a full page refresh, not a parcial > ajax > > request/refresh as we're trying to create. Can the problem be with the > > browsers we're using for the testing? > > I'm using a FF 1.5.0.6 on Windows. > > > > Out of curiosity I tried the same test case on IE 6.0.2900... and guess > > what... it works. > > From previous posts I know Jesse's OS is Linux and his browser FF. Maybe > > this issue only happens in FF on windows? > > Can you test this Jesse? > > > > So I vouch that the code works but in my tests only on IE. > > Denis, what's your browser? > > > > On 8/22/06, Jesse Kuhnert <[EMAIL PROTECTED]> wrote: > > > > > > They should be working on forms just fine. > > > > > > In fact, this form uses them here: > > > > > > > > > > > http://opencomponentry.com:8080/workbench/Home,$Border.pageLink.sdirect?sp=S > > Dates > > > . > > > > > > > > > > > > On 8/22/06, Denis Souza <[EMAIL PROTECTED]> wrote: > > > > > > > > The parameters are not implemented for Submit, but they already do > > exist > > > > in > > > > the Form component. Since Jesse replied that's fixed I thought it > > meant > > > > ajax > > > > should be working when using these parameters on a form. > > > > > > > > -Original Message- > > > > From: Norbert Sándor [mailto:[EMAIL PROTECTED] > > > > Sent: terça-feira, 22 de agosto de 2006 14:03 > > > > To: Tapestry users > > > > Subject: Re: Async form in Tap4.1 does not work... > > > > > > > > As I know it is not yet implemented, I guess there are no such > > > > parameters (async, updateComponents) for Submit, LinkSubmit, etc. > yet. > > > > > > > > Regards, > > > > Norbi > > > > > > > > Denis Souza wrote: > > > > > I'm still having the same problem as Pedro. Submitting a form with > > > ajax > > > > only > > > > > works when I use @EventListener. Using async=true and > > updateComponents > > > > on > > > > > the form component seem to have no effect. The form is always > > > submitted > > > > > normally (without ajax). Tried it with the latest snapshot > > > > > (4.1.1-20060822.021102-19) and still no go. > > > > > > > > > > -Original Message- > > > > > From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] > > > > > Sent: segunda-feira, 21 de agosto de 2006 23:14 > > > > > To: Tapestry users > > > > > Subject: Re: Async form in Tap4.1 does not work... > > > > > > > > > > Fixed. &g
RE: Async form in Tap4.1 does not work...
I tested on both IE6 and Firefox 1.5 with the same results on both: Workbench demo works, but my own code does not. :( -Original Message- From: Pedro Viegas [mailto:[EMAIL PROTECTED] Sent: terça-feira, 22 de agosto de 2006 19:19 To: Tapestry users Subject: Re: Async form in Tap4.1 does not work... Got the bastard! It's a snicky little one! I also updated the last SNAPSHOT and the result are exactly the same. As Danis said, althought the Submit does not have the async parameters the form does and so this should work. I tried the workbench demo link Jesse provided but it behaves preciselly like we are describing. It issues a full page refresh, not a parcial ajax request/refresh as we're trying to create. Can the problem be with the browsers we're using for the testing? I'm using a FF 1.5.0.6 on Windows. Out of curiosity I tried the same test case on IE 6.0.2900... and guess what... it works. >From previous posts I know Jesse's OS is Linux and his browser FF. Maybe this issue only happens in FF on windows? Can you test this Jesse? So I vouch that the code works but in my tests only on IE. Denis, what's your browser? On 8/22/06, Jesse Kuhnert <[EMAIL PROTECTED]> wrote: > > They should be working on forms just fine. > > In fact, this form uses them here: > > http://opencomponentry.com:8080/workbench/Home,$Border.pageLink.sdirect?sp=S Dates > . > > > > On 8/22/06, Denis Souza <[EMAIL PROTECTED]> wrote: > > > > The parameters are not implemented for Submit, but they already do exist > > in > > the Form component. Since Jesse replied that's fixed I thought it meant > > ajax > > should be working when using these parameters on a form. > > > > -Original Message- > > From: Norbert Sándor [mailto:[EMAIL PROTECTED] > > Sent: terça-feira, 22 de agosto de 2006 14:03 > > To: Tapestry users > > Subject: Re: Async form in Tap4.1 does not work... > > > > As I know it is not yet implemented, I guess there are no such > > parameters (async, updateComponents) for Submit, LinkSubmit, etc. yet. > > > > Regards, > > Norbi > > > > Denis Souza wrote: > > > I'm still having the same problem as Pedro. Submitting a form with > ajax > > only > > > works when I use @EventListener. Using async=true and updateComponents > > on > > > the form component seem to have no effect. The form is always > submitted > > > normally (without ajax). Tried it with the latest snapshot > > > (4.1.1-20060822.021102-19) and still no go. > > > > > > -Original Message- > > > From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] > > > Sent: segunda-feira, 21 de agosto de 2006 23:14 > > > To: Tapestry users > > > Subject: Re: Async form in Tap4.1 does not work... > > > > > > Fixed. > > > > > > On 8/21/06, Pedro Viegas <[EMAIL PROTECTED]> wrote: > > > > > >> btw: tried it with the fresh SNAPSHOT of 20060819 and the result is > > still > > >> the same! > > >> > > >> On 8/21/06, Pedro Viegas <[EMAIL PROTECTED]> wrote: > > >> > > >>> I've been browsing the TimeTracker source to see if I can sort > things > > >>> > > >> out. > > >> > > >>> I've found the parameter I mentioned... the shell's > > ajaxEnabled="true". > > >>> > > >> I > > >> > > >>> set it up in my test code and no change. Huess it's allready true by > > >>> default. > > >>> Since > http://tapestry.apache.org/tapestry4.1/components/Shell.htmldoes > > >>> not mention it I'm only guessing. > > >>> By what I gather from the TimeTracker code no ajax like form > > submission > > >>> > > >> is > > >> > > >>> implemented. All ajax calls are made by @EventListener's setups. Is > > the > > >>> > > >> form > > >> > > >>> ajax submit working? Has anybody got it working? > > >>> > > >>> Thanks, > > >>> > > >>> > > >>> On 8/21/06, Pedro Viegas <[EMAIL PROTECTED]> wrote: > > >>> > > >>>> Yep, sorry, I was messing things up a bit. > > >>>> I corrected several errors I had on the code. > > >>>> The form submits fine, all works but not asyncronously. It does a > > >>>> > > >> normal > > >> > > >
RE: Async form in Tap4.1 does not work...
It really is working. I don't get it though. I looked at the source code and changed my own code to look as much like it as possible so I could spot the problem. But still no ajax. This is the test I wrote: Where "val" is a String in the component's class. Is there something I'm doing wrong? Thanks, Denis -Original Message- From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] Sent: terça-feira, 22 de agosto de 2006 18:17 To: Tapestry users Subject: Re: Async form in Tap4.1 does not work... They should be working on forms just fine. In fact, this form uses them here: http://opencomponentry.com:8080/workbench/Home,$Border.pageLink.sdirect?sp=S Dates . On 8/22/06, Denis Souza <[EMAIL PROTECTED]> wrote: > > The parameters are not implemented for Submit, but they already do exist > in > the Form component. Since Jesse replied that's fixed I thought it meant > ajax > should be working when using these parameters on a form. > > -Original Message- > From: Norbert Sándor [mailto:[EMAIL PROTECTED] > Sent: terça-feira, 22 de agosto de 2006 14:03 > To: Tapestry users > Subject: Re: Async form in Tap4.1 does not work... > > As I know it is not yet implemented, I guess there are no such > parameters (async, updateComponents) for Submit, LinkSubmit, etc. yet. > > Regards, > Norbi > > Denis Souza wrote: > > I'm still having the same problem as Pedro. Submitting a form with ajax > only > > works when I use @EventListener. Using async=true and updateComponents > on > > the form component seem to have no effect. The form is always submitted > > normally (without ajax). Tried it with the latest snapshot > > (4.1.1-20060822.021102-19) and still no go. > > > > -Original Message- > > From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] > > Sent: segunda-feira, 21 de agosto de 2006 23:14 > > To: Tapestry users > > Subject: Re: Async form in Tap4.1 does not work... > > > > Fixed. > > > > On 8/21/06, Pedro Viegas <[EMAIL PROTECTED]> wrote: > > > >> btw: tried it with the fresh SNAPSHOT of 20060819 and the result is > still > >> the same! > >> > >> On 8/21/06, Pedro Viegas <[EMAIL PROTECTED]> wrote: > >> > >>> I've been browsing the TimeTracker source to see if I can sort things > >>> > >> out. > >> > >>> I've found the parameter I mentioned... the shell's > ajaxEnabled="true". > >>> > >> I > >> > >>> set it up in my test code and no change. Huess it's allready true by > >>> default. > >>> Since http://tapestry.apache.org/tapestry4.1/components/Shell.htmldoes > >>> not mention it I'm only guessing. > >>> By what I gather from the TimeTracker code no ajax like form > submission > >>> > >> is > >> > >>> implemented. All ajax calls are made by @EventListener's setups. Is > the > >>> > >> form > >> > >>> ajax submit working? Has anybody got it working? > >>> > >>> Thanks, > >>> > >>> > >>> On 8/21/06, Pedro Viegas <[EMAIL PROTECTED]> wrote: > >>> > >>>> Yep, sorry, I was messing things up a bit. > >>>> I corrected several errors I had on the code. > >>>> The form submits fine, all works but not asyncronously. It does a > >>>> > >> normal > >> > >>>> submit and not an ajax one. > >>>> The client side form validation is also not working. Only server > side. > >>>> So async mode is apparently not activating. > >>>> Any clues why? I seem to remember something on the mailing list a > >>>> > >> while > >> > >>>> back of activating ajax globally... maybe on the shell component? > >>>> > >> Something > >> > >>>> like that? > >>>> > >>>> My testcode is as follows... > >>>> > >>>> > >>>> .html > >>>> > >>>> >>>> browserLogLevel="DEBUG" debugEnabled="true" > >>>> debugContainerId="dojoDebug" > >>>> doctype="literal:PUBLIC html "-//W3C//DTD XHTML > >>>> > >> 1.0Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1- > >> > >>>> transitional.dtd""> > >>
RE: Async form in Tap4.1 does not work...
The parameters are not implemented for Submit, but they already do exist in the Form component. Since Jesse replied that's fixed I thought it meant ajax should be working when using these parameters on a form. -Original Message- From: Norbert Sándor [mailto:[EMAIL PROTECTED] Sent: terça-feira, 22 de agosto de 2006 14:03 To: Tapestry users Subject: Re: Async form in Tap4.1 does not work... As I know it is not yet implemented, I guess there are no such parameters (async, updateComponents) for Submit, LinkSubmit, etc. yet. Regards, Norbi Denis Souza wrote: > I'm still having the same problem as Pedro. Submitting a form with ajax only > works when I use @EventListener. Using async=true and updateComponents on > the form component seem to have no effect. The form is always submitted > normally (without ajax). Tried it with the latest snapshot > (4.1.1-20060822.021102-19) and still no go. > > -Original Message- > From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] > Sent: segunda-feira, 21 de agosto de 2006 23:14 > To: Tapestry users > Subject: Re: Async form in Tap4.1 does not work... > > Fixed. > > On 8/21/06, Pedro Viegas <[EMAIL PROTECTED]> wrote: > >> btw: tried it with the fresh SNAPSHOT of 20060819 and the result is still >> the same! >> >> On 8/21/06, Pedro Viegas <[EMAIL PROTECTED]> wrote: >> >>> I've been browsing the TimeTracker source to see if I can sort things >>> >> out. >> >>> I've found the parameter I mentioned... the shell's ajaxEnabled="true". >>> >> I >> >>> set it up in my test code and no change. Huess it's allready true by >>> default. >>> Since http://tapestry.apache.org/tapestry4.1/components/Shell.html does >>> not mention it I'm only guessing. >>> By what I gather from the TimeTracker code no ajax like form submission >>> >> is >> >>> implemented. All ajax calls are made by @EventListener's setups. Is the >>> >> form >> >>> ajax submit working? Has anybody got it working? >>> >>> Thanks, >>> >>> >>> On 8/21/06, Pedro Viegas <[EMAIL PROTECTED]> wrote: >>> >>>> Yep, sorry, I was messing things up a bit. >>>> I corrected several errors I had on the code. >>>> The form submits fine, all works but not asyncronously. It does a >>>> >> normal >> >>>> submit and not an ajax one. >>>> The client side form validation is also not working. Only server side. >>>> So async mode is apparently not activating. >>>> Any clues why? I seem to remember something on the mailing list a >>>> >> while >> >>>> back of activating ajax globally... maybe on the shell component? >>>> >> Something >> >>>> like that? >>>> >>>> My testcode is as follows... >>>> >>>> >>>> .html >>>> >>>> >>> browserLogLevel="DEBUG" debugEnabled="true" >>>> debugContainerId="dojoDebug" >>>> doctype="literal:PUBLIC html "-//W3C//DTD XHTML >>>> >> 1.0Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1- >> >>>> transitional.dtd""> >>>> >>>> >>>> >>>> >>> async="ognl:true" updateComponents="ognl:{'results'}" >>>> listener="listener:formSubmit"> >>>> >>>>Project name: >>> value="ognl:name" >>>> validators="validators:required"/> >>>> >>>>Project description: > >>>>value="ognl:description" /> >>>> >>>> >>>> >>>> >>>> Name: >>>> Description: >>>> >>>> >>>>Debug goes here! >>>> >>>> >>>> >>>> >>>> .java >>>> >>>> public abstract class Test extends BasePageImplementation { >>>> >>>> @InitialValue("literal:delegateIt") >>>> public abstract String getN
RE: Async form in Tap4.1 does not work...
I'm still having the same problem as Pedro. Submitting a form with ajax only works when I use @EventListener. Using async=true and updateComponents on the form component seem to have no effect. The form is always submitted normally (without ajax). Tried it with the latest snapshot (4.1.1-20060822.021102-19) and still no go. -Original Message- From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] Sent: segunda-feira, 21 de agosto de 2006 23:14 To: Tapestry users Subject: Re: Async form in Tap4.1 does not work... Fixed. On 8/21/06, Pedro Viegas <[EMAIL PROTECTED]> wrote: > > btw: tried it with the fresh SNAPSHOT of 20060819 and the result is still > the same! > > On 8/21/06, Pedro Viegas <[EMAIL PROTECTED]> wrote: > > > > I've been browsing the TimeTracker source to see if I can sort things > out. > > I've found the parameter I mentioned... the shell's ajaxEnabled="true". > I > > set it up in my test code and no change. Huess it's allready true by > > default. > > Since http://tapestry.apache.org/tapestry4.1/components/Shell.html does > > not mention it I'm only guessing. > > By what I gather from the TimeTracker code no ajax like form submission > is > > implemented. All ajax calls are made by @EventListener's setups. Is the > form > > ajax submit working? Has anybody got it working? > > > > Thanks, > > > > > > On 8/21/06, Pedro Viegas <[EMAIL PROTECTED]> wrote: > > > > > > Yep, sorry, I was messing things up a bit. > > > I corrected several errors I had on the code. > > > The form submits fine, all works but not asyncronously. It does a > normal > > > submit and not an ajax one. > > > The client side form validation is also not working. Only server side. > > > So async mode is apparently not activating. > > > Any clues why? I seem to remember something on the mailing list a > while > > > back of activating ajax globally... maybe on the shell component? > Something > > > like that? > > > > > > My testcode is as follows... > > > > > > > > > .html > > > > > > > > browserLogLevel="DEBUG" debugEnabled="true" > > > debugContainerId="dojoDebug" > > > doctype="literal:PUBLIC html "-//W3C//DTD XHTML > 1.0Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1- > > > transitional.dtd""> > > > > > > > > > > > > > > async="ognl:true" updateComponents="ognl:{'results'}" > > > listener="listener:formSubmit"> > > > > > >Project name: > > value="ognl:name" > > > validators="validators:required"/> > > > > > >Project description: > >value="ognl:description" /> > > > > > > > > > > > > > > > Name: > > > Description: > > > > > > > > >Debug goes here! > > > > > > > > > > > > > > > .java > > > > > > public abstract class Test extends BasePageImplementation { > > > > > > @InitialValue("literal:delegateIt") > > > public abstract String getName(); > > > @InitialValue("literal:A project management suite!") > > > public abstract String getDescription(); > > > > > > public void formSubmit(IRequestCycle cycle) { > > > getLogger().debug("Entered formSubmit"); > > > getLogger().debug("Name: "+getName()); > > > getLogger().debug("Description: "+getDescription()); > > > } > > > } > > > > > > Thanks, > > > > > > > > > > > > On 8/20/06, Jesse Kuhnert <[EMAIL PROTECTED]> wrote: > > > > > > > > I don't believe @Submit or similar components accept that parameter. > > > > (double > > > > check the docs, but I think that only applies to the @Form > > > > currently..or > > > > various links) > > > > > > > > On 8/20/06, Pedro Viegas < [EMAIL PROTECTED]> wrote: > > > > > > > > > > Hi there. > > > > > Been trying to get a Tap4.1 form component to behave like a > > > > Tacos:AjaxForm > > > > > with no success. > > > > > If I understand correctly what I have to do is declare my form > with > > > > > async="true" and have a submit with the updateComponents="some > id", > > > > right? > > > > > I have the following example witch always does a normal full page > > > > submit. > > > > > > > > > > test.html > > > > > > > > > > > > > > browserLogLevel="DEBUG" debugEnabled="true" > > > > > debugContainerId="dojoDebug" > > > > > doctype="literal:PUBLIC html "-//W3C//DTD XHTML > > > > > 1.0Transitional//EN" > > > > > "http://www.w3.org/TR/xhtml1/DTD/xhtml1- > > > > > transitional.dtd""> > > > > > > > > > > > > > > > > > > > listener="formSubmit"/> > > > > > > > > async="true"> > > > > >Project name: > > > > value="ognl:name" > > > > > validators="validators:required"/> > > > > >Project description: > > > > value="ognl:description" /> > > > > > > > > > > > > > > > > > > > > Name: > > > > > Description: value="ognl:description" > > > > /> > > > > > > > > > > > > > > >Debug goes here! > >
RE: Submit doesnt tag or select when the form is submitted via ajax
While, on the topic, I don't know if this might be related but I'm still having trouble with ajax forms. Take the following example: The page is still fully reloaded but the listener gets called as it should. Same thing with the listener/action parameter on the submit button. It only happens with forms. DirecLink works great. Am I forgetting something? Any ideas? Thanks, Denis -Original Message- From: Josh Long [mailto:[EMAIL PROTECTED] Sent: quarta-feira, 16 de agosto de 2006 16:54 To: Tapestry users Subject: Re: Submit doesnt tag or select when the form is submitted via ajax Yay JIRA and Jesse! Um... the bug URL is https://issues.apache.org/jira/browse/TAPESTRY-1069 Thanks again, Josh On 8/16/06, Jesse Kuhnert <[EMAIL PROTECTED]> wrote: > HmmSounds like a JIRA worthy bug. (The fix is very easy though..I think? > ...will know later) > > On 8/16/06, Josh Long <[EMAIL PROTECTED]> wrote: > > > > Im noticing that the @Submit doesnt tag or select anything when the > > form is submitted via ajax (ie, async = true, updateComponents = > > "foo", etc).. > > > > Anyone else have this problem? > > > > Any workarounds? > > > > Peace, > > Josh > > > > - > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > -- > Jesse Kuhnert > Tapestry/Dojo/(and a dash of TestNG), team member/developer > > Open source based consulting work centered around > dojo/tapestry/tacos/hivemind. > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Ajax in Tap 4.1
Yes, that's it! Don't know how I could have missed that. Thank you! Denis Souza -Original Message- From: Norbert Sándor [mailto:[EMAIL PROTECTED] Sent: quinta-feira, 10 de agosto de 2006 13:26 To: Tapestry users Subject: Re: Ajax in Tap 4.1 I didn't try but maybe parameter async=true should be specified on the DirectLink. It is false by default. Regards, Norbi Denis Souza wrote: > Hi, > > > > Still playing around with Tapestry 4.1 it seems I just can't get Ajax to > work in any case. I created the following simple example which doesn't do > Ajax. It just makes a regular request: > > > > My html: > > > > updateComponents="ognl:{'testajax'}">Hello! > > > > > > My class: > > > > public void listen(IRequestCycle cycle) { > >setToggle(!getToggle()); > > } > > > > The html produced: > > > > href="/test/app?component=link&page=Home&service=direct&session= > T" id="link">Hello world! > > > > Is there something missing that I'm just not seeing? Is there something Tap > 4.1 needs to activate ajax? I''m using "ajaxEnabled="ognl:true"" on my > @Shell component just to be safe. When using Tacos it was expected that > anytime the Ajax* components where used, the request should be an Ajax > request, I'm not sure how to do that in Tap 4.1. I assume it knows either > because of the "updateComponents" parameter or because of an attatched > @EventListener annotation. > > I also tried using @EventListener (with a onmouseover event) with no > success. It does generate the appropriate javascript > (dojo.event.connect(dojo.byId("link"), "onMouseOver", function(e). ) but > nothing happens when I try to use it. > > > > I appreciate any help. > > Denis Souza > > > > > > > > No virus found in this incoming message. > Checked by AVG Free Edition. > Version: 7.1.394 / Virus Database: 268.10.8/414 - Release Date: 2006.08.09. > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Ajax in Tap 4.1
Hi, Still playing around with Tapestry 4.1 it seems I just can't get Ajax to work in any case. I created the following simple example which doesn't do Ajax. It just makes a regular request: My html: Hello! My class: public void listen(IRequestCycle cycle) { setToggle(!getToggle()); } The html produced: Hello world! Is there something missing that I'm just not seeing? Is there something Tap 4.1 needs to activate ajax? I''m using "ajaxEnabled="ognl:true"" on my @Shell component just to be safe. When using Tacos it was expected that anytime the Ajax* components where used, the request should be an Ajax request, I'm not sure how to do that in Tap 4.1. I assume it knows either because of the "updateComponents" parameter or because of an attatched @EventListener annotation. I also tried using @EventListener (with a onmouseover event) with no success. It does generate the appropriate javascript (dojo.event.connect(dojo.byId("link"), "onMouseOver", function(e). ) but nothing happens when I try to use it. I appreciate any help. Denis Souza
RE: Ajax form question about Tapestry 4.1
Yes, it makes sense. My first attempt at this was actually listening for the "onclick" event on a submit button but it has the same effect. Now my question is: what would be the solution in this case? (i.e. if I should log a JIRA issue/bug, what would it contain?) When capturing the "onsubmit" event on the form, it must be submitted, right? Would there be a way to stop this or would it require a completely different mechanism? Again, I would suggest the "updateComponents" parameter as a solution since it has always worked so well on Tacos. -Original Message- From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] Sent: quarta-feira, 2 de agosto de 2006 19:39 To: Tapestry users Subject: Re: Ajax form question about Tapestry 4.1 Sounds like a possible bug. It makes sense though now.. All the @EventListener would do in this instance is bind to the event happening, not interfere with "what" happens. Your form submitting probably just blew away any chance of having the ajax stuff completing :) On 8/2/06, Denis Souza <[EMAIL PROTECTED]> wrote: > > > I've been trying to avoid adding too many new parameters (like > > updateComponents) all over the place before I felt like I had found a > good > > way to do this without code duplication. > > I'm all for reducing the number of parameters as long as there some other > way to do the same thing. It's just that I couldn't get it to work in any > other way. > But I also think the updateComponents parameter could be very useful. In > some cases it could be a welcome replacement to writing a listener method > with an EventListener annotation. > > > As for Forms, you could very easily use @EventListener, targeting a form > + > > event of "onsubmit" to get the same result. (Use ResponseBuilder to > update > > whatever components you want, possibly event the whole form so you see > the > > server side rendered validators.) > > Yes, I tried exactly that: > > @EventListener(targets="form", events="onsubmit") > public void myListener(IRequestCycle cycle) { >... do something ... >cycle.getResponseBuilder().updateComponent("x"); > } > > But when I click on a submit button, the entire page is still reloaded. I > tried it with my submit button's action/listener parameter being the same > listener as the EventListener annotation. > From what I could understand from the tests I made, the component "x" (as > in > the above example) gets rendered twice, once for the ajax update and once > more for the page reload. > I think I'm failing somehow to tell the framework that this should be an > ajax-only request. Since you said it should work, it could be something > that > I'm doing wrong, or could be a bug that shows under certain conditions. > Any ideas? > > > Cheers > Denis Souza > > -Original Message- > From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] > Sent: quarta-feira, 2 de agosto de 2006 18:24 > To: Tapestry users > Subject: Re: Ajax form question about Tapestry 4.1 > > I've been trying to avoid adding too many new parameters (like > updateComponents) all over the place before I felt like I had found a good > way to do this without code duplication. > > It's probably fair that I at least add them to form/form button based > components though. > > As for Forms, you could very easily use @EventListener, targeting a form + > event of "onsubmit" to get the same result. (Use ResponseBuilder to update > whatever components you want, possibly event the whole form so you see the > server side rendered validators.) > > Although, if all you care about is the UI mechanism employed to decorate > form fields then you might find doing it on the client side to be more > efficient. > > Perhaps I should allow an easier to use(understand?) method of decorating > form fields on the client side similar to (if not the same? will have to > think about this) the existing ValidationDelegate? > > If you wanted to re-produce the "look" the server gives you could fairly > easily take the javascript reference found here - > http://tapestry.apache.org/tapestry4.1/javascript/form-validation.html - > and > handle the UI part anyway you like. > > If you have a Border component or similar the perfect thing to do might be > to define a javascript block like so to override the default Tapestry > client > side decorating logic (not validation logic, you have to override a > different function for that): > > > tapestry.form.validation.handleMissingField=function(field, profile) { >/// Do whatever you want, the default just applies a CSS class name to
RE: Ajax form question about Tapestry 4.1
> I've been trying to avoid adding too many new parameters (like > updateComponents) all over the place before I felt like I had found a good > way to do this without code duplication. I'm all for reducing the number of parameters as long as there some other way to do the same thing. It's just that I couldn't get it to work in any other way. But I also think the updateComponents parameter could be very useful. In some cases it could be a welcome replacement to writing a listener method with an EventListener annotation. > As for Forms, you could very easily use @EventListener, targeting a form + > event of "onsubmit" to get the same result. (Use ResponseBuilder to update > whatever components you want, possibly event the whole form so you see the > server side rendered validators.) Yes, I tried exactly that: @EventListener(targets="form", events="onsubmit") public void myListener(IRequestCycle cycle) { ... do something ... cycle.getResponseBuilder().updateComponent("x"); } But when I click on a submit button, the entire page is still reloaded. I tried it with my submit button's action/listener parameter being the same listener as the EventListener annotation. >From what I could understand from the tests I made, the component "x" (as in the above example) gets rendered twice, once for the ajax update and once more for the page reload. I think I'm failing somehow to tell the framework that this should be an ajax-only request. Since you said it should work, it could be something that I'm doing wrong, or could be a bug that shows under certain conditions. Any ideas? Cheers Denis Souza -Original Message- From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] Sent: quarta-feira, 2 de agosto de 2006 18:24 To: Tapestry users Subject: Re: Ajax form question about Tapestry 4.1 I've been trying to avoid adding too many new parameters (like updateComponents) all over the place before I felt like I had found a good way to do this without code duplication. It's probably fair that I at least add them to form/form button based components though. As for Forms, you could very easily use @EventListener, targeting a form + event of "onsubmit" to get the same result. (Use ResponseBuilder to update whatever components you want, possibly event the whole form so you see the server side rendered validators.) Although, if all you care about is the UI mechanism employed to decorate form fields then you might find doing it on the client side to be more efficient. Perhaps I should allow an easier to use(understand?) method of decorating form fields on the client side similar to (if not the same? will have to think about this) the existing ValidationDelegate? If you wanted to re-produce the "look" the server gives you could fairly easily take the javascript reference found here - http://tapestry.apache.org/tapestry4.1/javascript/form-validation.html - and handle the UI part anyway you like. If you have a Border component or similar the perfect thing to do might be to define a javascript block like so to override the default Tapestry client side decorating logic (not validation logic, you have to override a different function for that): tapestry.form.validation.handleMissingField=function(field, profile) { /// Do whatever you want, the default just applies a CSS class name to the field node. You could just as easily wrap the field with a span or font element and give it red **'s if you like } Can you guys log some of the things you've mentioned into JIRA so that I don't forget? I probably won't be able to spend enough time on them (design wise) until this weekend to implement it correctly, but may forget if no JIRA issue has been created. On 8/2/06, Josh Long <[EMAIL PROTECTED]> wrote: > > Yeah I was sort of wondering the same thing, and in particular, how do > I get validation messages to render via ajax -- that is, i wat the > form to go through the normal validation routine and I dont want to > enable client side validation. I actually kind of like the red stars > and custom decorators the validation classes afford you... > > i remember in tacos there was an example of employing the validators > (ie, led red asterisks appeared via ajax), is this possible in > tapestry 4.1 without some weird kludge? > > I read in the docs that the default is to disable validation when > using submitForm -- since most of the use cases would make incurring > the validation lifecycle cumbersome to the user. Thats the default, > which implies it can be toggled... can it, and if so, how? ;-) > > Thanks, > > Josh > > On 8/2/06, Denis Souza <[EMAIL PROTECTED]> wrote: > > Hi, I was looking at the new Tapestry 4.1 ajax features. > > EventListener/ResponseBuilder are really nice! Besides
Ajax form question about Tapestry 4.1
Hi, I was looking at the new Tapestry 4.1 ajax features. EventListener/ResponseBuilder are really nice! Besides the new annotations I noticed some components (such as DirectLink) already have the Tacos ajax functionality built in which allows you to update a certain part of the page ("updateComponents" parameter), however I didn't find the same functionality for the forms and submit buttons. I tried using an EventListener/ResponseBuilder combination (listening for onClick and onSubmit) to try and get the same result but whenever I click on a submit button the form is submitted the traditional way, the entire page is reloaded. I'm guessing this could be solved by replacing the submit buttons with regular links and having the form submitted on the EventListener, but it just doesn't feel right not to use submit buttons where they are needed. Is there a new way to do this (maybe using the annotations) or is the ajax form submit functionality just not implemented yet? Cheers Denis Souza
RE: Date Pickers in 4.1
Great! I'll download it and try it out. Thank you all for the replies! -Original Message- From: Jesse Kuhnert [mailto:[EMAIL PROTECTED] Sent: quarta-feira, 2 de agosto de 2006 00:22 To: Tapestry users Subject: Re: Date Pickers in 4.1 Hi Denis, A fix is being deployed via maven2 as I write this email. Sorry about that. P.S. I had almost forgotten (shows how well the validation system was written by previous contributions - I think Paul Ferraro in this case ) that the new min/max client side validation logic ~also~ applies to the existing DatePicker component as well. (Looks cool on the workbench demo :) ) On 8/1/06, Jesse Kuhnert <[EMAIL PROTECTED]> wrote: > > Hmmm...I'll look tonight, must have been a screw up on my part somehow. > Either way it will probably be fixed by tomorrow if you are using the > current 4.1.1-SNAPSHOT version of Tapestry with maven2. (Otherwise you can > download the new jar manually from the snapshot repos? ) > > > On 8/1/06, Denis Souza <[EMAIL PROTECTED]> wrote: > > > > Hi, > > > > > > > > I just got Tapestry 4.1 and I now whenever I use the DatePicker > > component > > and click on the icon I get the following javascrip error in Firefox: > > > > > > > > Error: document.Form has no properties > > > > Source File: javascript:calendar_dp.toggle(document.Form.DatePicker); > > > > > > > > IE6 shows this error: > > > > > > > > 'document.Form.DatePicker' is null or not an object > > > > > > > > The javascript output seems to be in order: > > > > > > > > > href="javascript:calendar_dp.toggle( document.Form.DatePicker);"> > > > src="/datetest/app?service=asset&path=%2Forg%2Fapache%2Ftapestry%2Fform% > > 2FDatePickerIcon.png" alt="Click on icon to choose a date/time value." > > border="0"/> > > > > > > > > I even created a new application just to test that but I keep getting > > the > > same error. The template code couldn't be simpler: > > > > > > > > > > > > > > > > Any ideas on why this is happening? > > > > > > > > > > > > > > > > One other thing. I also tried to use the DropDownDatePicker component > > but I > > couldn't get it to work. Tapestry simply doesn't find it: > > > > > > > > Component 'DropDownDatePicker' not found in [EMAIL PROTECTED] > > []. > > > > > > > > I'm thinking maybe something's very different about it since it's a dojo > > widget but I haven't been able to figure out how to use it. The docs > > don't > > have much information about it (unless I overlooked something). Could > > anyone > > point me in the right direction? > > > > > > > > Thanks, > > > > Denis Souza > > > > > > > > > > > > > -- > Jesse Kuhnert > Tacos/Tapestry, team member/developer > > Open source based consulting work centered around > dojo/tapestry/tacos/hivemind. > -- Jesse Kuhnert Tacos/Tapestry, team member/developer Open source based consulting work centered around dojo/tapestry/tacos/hivemind. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Date Pickers in 4.1
Hi, I just got Tapestry 4.1 and I now whenever I use the DatePicker component and click on the icon I get the following javascrip error in Firefox: Error: document.Form has no properties Source File: javascript:calendar_dp.toggle(document.Form.DatePicker); IE6 shows this error: 'document.Form.DatePicker' is null or not an object The javascript output seems to be in order: I even created a new application just to test that but I keep getting the same error. The template code couldn't be simpler: Any ideas on why this is happening? One other thing. I also tried to use the DropDownDatePicker component but I couldn't get it to work. Tapestry simply doesn't find it: Component 'DropDownDatePicker' not found in [EMAIL PROTECTED]]. I'm thinking maybe something's very different about it since it's a dojo widget but I haven't been able to figure out how to use it. The docs don't have much information about it (unless I overlooked something). Could anyone point me in the right direction? Thanks, Denis Souza
Using @tacos:Refresh on a component
Hi, I'm having some trouble with the tacos Refresh component. I have a component that needs to refresh a list of images on occasion, so I've inserted the following code in the component's html file. function refreshImageList() { <span jwcid="@tacos:Refresh" updateComponents="ognl:{'imagelist'}" /> } The component is used in one of my pages. Once it's running, whenever I click on any of the page's submit buttons (which are all AjaxSubmit), I get this exception: org.apache.hivemind.ApplicationRuntimeException Component product/ProductEditPage/$data$ImageBrowser.$Refresh requires rendering support, but no PageRenderSupport object has been stored into the request cycle. This object is typically provided by a Body component. You should add a Body component to your template. However, I DO have a Body component on my page. Not only that, if I take that javascript function and insert it directly into the page's html file instead of the component's html, it works perfectly. I could leave the code on the page but it wouldn't be a very clean solution. Any ideas on why this is happening? I tried it with Tacos 4 beta 2 and with the latest bleeding-edge tacos 4 beta-3-20060601-0613. Thanks, Denis Souza