Try removing the snapshots from your local maven repository to be sure you pull down the most recent snapshot.
Worst case, go to http://code.google.com/p/tapestry5-components/source/checkout to find out how to get the source. > -----Original Message----- > From: lebenski [mailto:[EMAIL PROTECTED] > Sent: Thursday, May 08, 2008 12:26 PM > To: users@tapestry.apache.org > Subject: Re: T5: Urgent Problem. After clearing cookies communication > between client and tapestry breaks on first request > > > I have this in my pom: > > <dependency> > <groupId>org.apache.tapestry</groupId> > <artifactId>t5c-contrib</artifactId> > <version>0.5.12-SNAPSHOT</version> > </dependency> > > <dependency> > <groupId>org.apache.tapestry</groupId> > <artifactId>t5c-commons</artifactId> > <version>0.5.12-SNAPSHOT</version> > </dependency> > > <repository> > <id>t5components</id> > <name>T5Components Maven Repository</name> > <url>http://87.193.218.134:8080/t5components/maven- > repository</url> > </repository> > > And from what I can see, the issue is not fixed for me. As you know, I > have > to present this tomorrow! Any tips on getting it working would be great. > > Sven Homburg wrote: > > > > i commited a fix into the trunk > > > > 2008/5/8 lebenski <[EMAIL PROTECTED]>: > > > >> > >> Apparently this message didnt get sent properly last time: > >> > >> Oh I just noticed that you said you found the problem.... is it because > >> the > >> jsessionid is getting passed on the URL or something else? > >> > >> > >> > >> lebenski wrote: > >> > > >> > Thanks very much Sven. I appreciate your help on this matter, let me > >> know > >> > if I can be of any assistance, I'll be monitoring this thread all > day. > >> > > >> > Ben. > >> > > >> > > >> > > >> > Sven Homburg wrote: > >> >> > >> >> after a debug session, a find the reason for this behavior. > >> >> i try to find out a soloution for that > >> >> > >> >> 2008/5/8 lebenski <[EMAIL PROTECTED]>: > >> >> > >> >>> > >> >>> Yeah that sounds exactly like the problem i'm getting. > >> >>> > >> >>> FYI here is my initial request (onchange of username field) after > >> >>> deleting > >> >>> cookies: > >> >>> > >> >>> URL= > >> >>> > >> > http://localhost:8080/home.homepage.registerwidget.registerbasicwidget.reg > isterbasic_username:change;jsessionid=1d4snmum7f5cy/tesusername > >> >>> > >> >>> Second request: > >> >>> > >> >>> URL= > >> >>> > >> > http://localhost:8080/home.homepage.registerwidget.registerbasicwidget.reg > isterbasic_username:change/tesusername > >> >>> > >> >>> It appears the jsessionid only gets sent on the URL on the first > >> request > >> >>> (which breaks). However it gets sent in the cookie header both > >> times. > >> >>> The > >> >>> last bit after the slash is the value of the user name field. > >> >>> > >> >>> > >> >>> Sven Homburg wrote: > >> >>> > > >> >>> > i tested it here in my demo app. > >> >>> > if i delete the session cookie the the onevent result is empty > >> >>> > even though i refresh the page !?!? > >> >>> > > >> >>> > 2008/5/8 Sven Homburg <[EMAIL PROTECTED]>: > >> >>> > > >> >>> >> is there the same behavior if the restart the browser? > >> >>> >> > >> >>> >> > >> >>> >> 2008/5/8 lebenski <[EMAIL PROTECTED]>: > >> >>> >> > >> >>> >> > > >> >>> >> > for real testing i think its better to delete the cookie and > >> >>> refresh > >> >>> >> the > >> >>> >> > page > >> >>> >> > before you initiate the ajax request cycle. > >> >>> >> > > >> >>> >> > This is exactly what i'm doing. I've also tried this from a > >> fresh, > >> >>> >> > non-dev > >> >>> >> > machine. I hit my server without doing any shenanigans with > >> >>> deleting > >> >>> >> > cookies and I get the same issue %-|. > >> >>> >> > > >> >>> >> > > >> >>> >> > Sven Homburg wrote: > >> >>> >> > > > >> >>> >> > > thats not correct, > >> >>> >> > > the session id ommited by the servlet by every > >> >>> >> > > request to the browser > >> >>> >> > > > >> >>> >> > > so if the user starts the browser > >> >>> >> > > and request the www.blabla.com/servletcontext/login or > >> whatever > >> >>> >> > > the servlet container response the session id > >> >>> >> > > > >> >>> >> > > if you delete the cookie or remove the session id from url > >> >>> >> > > the server cant handle the ajax request (not sure for that > but > >> >>> sounds > >> >>> >> > > logical for me) > >> >>> >> > > > >> >>> >> > > for real testing i think its better to delete the cookie and > >> >>> refresh > >> >>> >> > the > >> >>> >> > > page > >> >>> >> > > before you initiate the ajax request cycle. > >> >>> >> > > > >> >>> >> > > 2008/5/8 lebenski <[EMAIL PROTECTED]>: > >> >>> >> > > > >> >>> >> > >> > >> >>> >> > >> I'm replicating the state in which a new user will hit the > >> site, > >> >>> >> they > >> >>> >> > >> won't > >> >>> >> > >> have any of the cookies set by Tapestry. > >> >>> >> > >> > >> >>> >> > >> > >> >>> >> > >> Sven Homburg wrote: > >> >>> >> > >> > > >> >>> >> > >> > why do you delete the cookies ? > >> >>> >> > >> > > >> >>> >> > >> > 2008/5/8 lebenski <[EMAIL PROTECTED]>: > >> >>> >> > >> > > >> >>> >> > >> >> > >> >>> >> > >> >> Hi guys, > >> >>> >> > >> >> > >> >>> >> > >> >> Ok i've got an urgent problem. I'm using tapestry to > >> develop > >> >>> a > >> >>> >> > web > >> >>> >> > >> app, > >> >>> >> > >> >> which I have to present tomorrow to some very important > >> >>> people! > >> >>> >> > >> >> > >> >>> >> > >> >> I've got a very frustrating problem. I will try to > >> explain > >> >>> it > >> >>> as > >> >>> >> > >> clearly > >> >>> >> > >> >> as > >> >>> >> > >> >> possible. > >> >>> >> > >> >> > >> >>> >> > >> >> I'm using the t5components/OnEvent Mixin to call back to > >> >>> Tapestry > >> >>> >> > >> >> 'onChange' > >> >>> >> > >> >> of a textfield. > >> >>> >> > >> >> > >> >>> >> > >> >> TML: > >> >>> >> > >> >> > >> >>> >> > >> >> <t:form t:id="registerBasicForm" t:class="gamesysForm" > >> >>> >> > >> >> zone="registerBasicZone"> > >> >>> >> > >> >> .... > >> >>> >> > >> >> <t:label > >> >>> for="registerbasic_userName"> > >> >>> >> > >> >> User Name: > >> >>> >> > >> >> </t:label> > >> >>> >> > >> >> <t:textfield > >> >>> >> > t:id="registerbasic_userName" > >> >>> >> > >> >> t:value="userName" > >> >>> >> > >> >> event="change" onfocus="showFieldHint('4-16 > >> >>> >> > >> >> > characters');showFieldError('registerbasic_userName');"/> > >> >>> >> > >> >> > >> >>> >> > >> >> .... > >> >>> >> > >> >> </t:form> > >> >>> >> > >> >> > >> >>> >> > >> >> Page Class: > >> >>> >> > >> >> > >> >>> >> > >> >> @Component(id = "registerbasic_userName", parameters = { > >> >>> >> > >> "event=change", > >> >>> >> > >> >> > >> >>> >> > >> >> "onCompleteCallback=checkForServerValidationErrors" > >> >>> >> > >> >> }) > >> >>> >> > >> >> @Mixins("t5components/OnEvent") > >> >>> >> > >> >> private TextField userNameField; > >> >>> >> > >> >> > >> >>> >> > >> >> ... > >> >>> >> > >> >> > >> >>> >> > >> >> @OnEvent(component = "registerbasic_userName", > >> value > >> = > >> >>> >> > >> "change") > >> >>> >> > >> >> public JSONObject onChangeFromUserName(String > >> value) > >> { > >> >>> >> > >> >> > System.out.println("onChangeFromUserName"); > >> >>> >> > >> >> JSONObject json = new JSONObject(); > >> >>> >> > >> >> Boolean userNameExists = false; > >> >>> >> > >> >> > >> >>> >> > >> >> Pattern p = > >> >>> >> > >> >> Pattern.compile(messages.get("alphanumeric-regex")); > >> >>> >> > >> >> Matcher m = p.matcher(value); > >> >>> >> > >> >> boolean validUserName = m.find(); > >> >>> >> > >> >> > >> >>> >> > >> >> if (validUserName) { > >> >>> >> > >> >> try { > >> >>> >> > >> >> userNameExists = > >> >>> >> > >> >> hydraService.userNameExists(value); > >> >>> >> > >> >> } catch (ServiceFaultException x) > { > >> >>> >> > >> >> logger.error("----fault : > " > >> + > >> >>> >> > >> >> x.getFault().getMessage()); > >> >>> >> > >> >> } catch (ServiceProblemException > x) > >> { > >> >>> >> > >> >> logger.error("---- > problem:" > >> + > >> >>> x); > >> >>> >> > >> >> } > >> >>> >> > >> >> > >> >>> >> > >> >> if (userNameExists) { > >> >>> >> > >> >> json.put("error", > "true"); > >> >>> >> > >> >> json > >> >>> >> > >> >> > >> >>> .append("message", > >> >>> >> > >> >> "Username " + value > >> >>> >> > >> >> > >> >>> + > >> >>> >> " > >> >>> >> > is > >> >>> >> > >> >> taken"); > >> >>> >> > >> >> } else { > >> >>> >> > >> >> json.put("error", > "false"); > >> >>> >> > >> >> json.append("message", > ""); > >> >>> >> > >> >> } > >> >>> >> > >> >> > >> >>> >> > >> >> } else { > >> >>> >> > >> >> json.put("error", "true"); > >> >>> >> > >> >> json.append("message", "Field > >> contains > >> >>> >> > invalid > >> >>> >> > >> >> characters"); > >> >>> >> > >> >> } > >> >>> >> > >> >> > >> >>> >> > >> >> json.append("submitid", > >> >>> "submitRegisterBasic"); > >> >>> >> > >> >> json.append("field", > >> >>> "registerbasic_userName"); > >> >>> >> > >> >> System.out.println(json.get("error") + " > " > >> + > >> >>> >> > >> >> json.get("field") + " " > >> >>> >> > >> >> + json.get("message")); > >> >>> >> > >> >> > >> >>> >> > >> >> return json; > >> >>> >> > >> >> } > >> >>> >> > >> >> > >> >>> >> > >> >> Javascript: > >> >>> >> > >> >> > >> >>> >> > >> >> function > checkForServerValidationErrors(response){ > >> >>> >> > >> >> > >> >>> >> > >> >> var json = response.evalJSON(); > >> >>> >> > >> >> var elementId = json.field.toString(); > >> >>> >> > >> >> > >> >>> >> > >> >> //This MUST be done first > >> >>> >> > >> >> performTypeValidation(elementId); > >> >>> >> > >> >> > >> >>> >> > >> >> if (json!=null && json.error == 'true' && > >> >>> >> > >> >> formErrors[elementId]==null) > >> >>> >> > >> >> { > >> >>> >> > >> >> > >> >>> >> > addFormValidationError(elementId,json.message); > >> >>> >> > >> >> } > >> >>> >> > >> >> > >> >>> >> > >> >> > >> >>> >> > >> >> > >> processValidationErrors(elementId,json.submitid.toString()); > >> >>> >> > >> >> } > >> >>> >> > >> >> > >> >>> >> > >> >> So, what happens is, when the user types a value into > >> >>> 'userName', > >> >>> >> > and > >> >>> >> > >> >> exits > >> >>> >> > >> >> the field (onChange seems to act like onBlur), it calls > >> back > >> >>> to > >> >>> >> > >> Tapestry > >> >>> >> > >> >> which executes the onChangeFromUserName(String value) > >> method > >> >>> to > >> >>> >> > check > >> >>> >> > >> if > >> >>> >> > >> >> the > >> >>> >> > >> >> username exists in the database. This then calls back > to > >> the > >> >>> >> > >> javascript > >> >>> >> > >> >> function (defined in the Component annotation) with a > JSON > >> >>> >> object. > >> >>> >> > >> The > >> >>> >> > >> >> javascript is used for client side > >> validation/presentational > >> >>> >> > stuff. > >> >>> >> > >> >> > >> >>> >> > >> >> This all works fine under normal conditions. HOWEVER, > >> when > >> I > >> >>> >> > clear my > >> >>> >> > >> >> cookies and do the same action (type a value into > >> 'username' > >> >>> and > >> >>> >> > tab > >> >>> >> > >> >> out), > >> >>> >> > >> >> i > >> >>> >> > >> >> get a javascript error 'json.field has no properties'. > >> The > >> >>> >> server > >> >>> >> > >> side > >> >>> >> > >> >> method (onChangeFromUserName) isn't getting called (I > can > >> >>> tell > >> >>> >> > because > >> >>> >> > >> it > >> >>> >> > >> >> doesnt hit System.out.println("onChangeFromUserName");), > >> BUT > >> >>> it > >> >>> >> is > >> >>> >> > >> >> calling > >> >>> >> > >> >> back to the javascript function. Rightly so, the > >> javascript > >> >>> is > >> >>> >> > >> >> complaining > >> >>> >> > >> >> because the JSON object hasn't been passed in. > >> >>> >> > >> >> > >> >>> >> > >> >> 2 cookies are getting set, JSESSIONID and UTRACK, and > they > >> do > >> >>> get > >> >>> >> > sent > >> >>> >> > >> >> both > >> >>> >> > >> >> on the initial request (right after i've cleared my > >> cookies) > >> >>> and > >> >>> >> > the > >> >>> >> > >> >> request > >> >>> >> > >> >> after. But for some reason, i'm not hitting the server > >> >>> method > >> >>> on > >> >>> >> > the > >> >>> >> > >> >> initial request. > >> >>> >> > >> >> > >> >>> >> > >> >> I have used tamper data to analyse both requests and > they > >> >>> appear > >> >>> >> > to be > >> >>> >> > >> >> identical. Both cookies are getting sent, all the > headers > >> >>> are > >> >>> >> > >> identical. > >> >>> >> > >> >> > >> >>> >> > >> >> I am at a real loss and starting to panic about this. > I'm > >> >>> >> > starting to > >> >>> >> > >> >> think > >> >>> >> > >> >> that Tapestry needs a request to properly set up the > >> session, > >> >>> >> > before > >> >>> >> > >> you > >> >>> >> > >> >> can > >> >>> >> > >> >> actually call back to it, but this is only a hunch. > >> >>> >> > >> >> > >> >>> >> > >> >> I really need to get this sorted, if you have any ideas > >> then > >> >>> >> > please > >> >>> >> > >> help! > >> >>> >> > >> >> -- > >> >>> >> > >> >> View this message in context: > >> >>> >> > >> >> > >> >>> >> > >> > >> >>> >> > > >> >>> >> > >> >>> > >> http://www.nabble.com/T5%3A-Urgent-Problem.-After-clearing-cookies- > communication-between-client-and-tapestry-breaks-on-first-request- > tp17123771p17123771.html > >> >>> >> > >> >> Sent from the Tapestry - User mailing list archive at > >> >>> Nabble.com. > >> >>> >> > >> >> > >> >>> >> > >> >> > >> >>> >> > >> >> > >> >>> >> > > >> >>> ------------------------------------------------------------------- > -- > >> >>> >> > >> >> To unsubscribe, e-mail: > >> [EMAIL PROTECTED] > >> >>> >> > >> >> For additional commands, e-mail: > >> >>> [EMAIL PROTECTED] > >> >>> >> > >> >> > >> >>> >> > >> >> > >> >>> >> > >> > > >> >>> >> > >> > > >> >>> >> > >> > -- > >> >>> >> > >> > with regards > >> >>> >> > >> > Sven Homburg > >> >>> >> > >> > http://tapestry5-components.googlecode.com > >> >>> >> > >> > > >> >>> >> > >> > > >> >>> >> > >> > ----- > >> >>> >> > >> > best regards > >> >>> >> > >> > Sven > >> >>> >> > >> > > >> >>> >> > >> > >> >>> >> > >> -- > >> >>> >> > >> View this message in context: > >> >>> >> > >> > >> >>> >> > > >> >>> >> > >> >>> > >> http://www.nabble.com/T5%3A-Urgent-Problem.-After-clearing-cookies- > communication-between-client-and-tapestry-breaks-on-first-request- > tp17123771p17123963.html > >> >>> >> > >> Sent from the Tapestry - User mailing list archive at > >> >>> Nabble.com. > >> >>> >> > >> > >> >>> >> > >> > >> >>> >> > >> > >> >>> >> > >> --------------------------------------------------------------------- > >> >>> >> > >> To unsubscribe, e-mail: users- > [EMAIL PROTECTED] > >> >>> >> > >> For additional commands, e-mail: > >> [EMAIL PROTECTED] > >> >>> >> > >> > >> >>> >> > >> > >> >>> >> > > > >> >>> >> > > > >> >>> >> > > -- > >> >>> >> > > with regards > >> >>> >> > > Sven Homburg > >> >>> >> > > http://tapestry5-components.googlecode.com > >> >>> >> > > > >> >>> >> > > > >> >>> >> > > ----- > >> >>> >> > > best regards > >> >>> >> > > Sven > >> >>> >> > > > >> >>> >> > > >> >>> >> > -- > >> >>> >> > View this message in context: > >> >>> >> > > >> >>> >> > >> >>> > >> http://www.nabble.com/T5%3A-Urgent-Problem.-After-clearing-cookies- > communication-between-client-and-tapestry-breaks-on-first-request- > tp17123771p17124134.html > >> >>> >> > Sent from the Tapestry - User mailing list archive at > >> Nabble.com. > >> >>> >> > > >> >>> >> > > >> >>> >> > > >> >>> ------------------------------------------------------------------- > -- > >> >>> >> > To unsubscribe, e-mail: [EMAIL PROTECTED] > >> >>> >> > For additional commands, e-mail: users- > [EMAIL PROTECTED] > >> >>> >> > > >> >>> >> > > >> >>> >> > >> >>> >> > >> >>> >> -- > >> >>> >> with regards > >> >>> >> Sven Homburg > >> >>> >> http://tapestry5-components.googlecode.com > >> >>> >> > >> >>> > > >> >>> > > >> >>> > > >> >>> > -- > >> >>> > with regards > >> >>> > Sven Homburg > >> >>> > http://tapestry5-components.googlecode.com > >> >>> > > >> >>> > > >> >>> > ----- > >> >>> > best regards > >> >>> > Sven > >> >>> > > >> >>> > >> >>> -- > >> >>> View this message in context: > >> >>> > >> http://www.nabble.com/T5%3A-Urgent-Problem.-After-clearing-cookies- > communication-between-client-and-tapestry-breaks-on-first-request- > tp17123771p17124356.html > >> >>> Sent from the Tapestry - User mailing list archive at Nabble.com. > >> >>> > >> >>> > >> >>> ------------------------------------------------------------------- > -- > >> >>> To unsubscribe, e-mail: [EMAIL PROTECTED] > >> >>> For additional commands, e-mail: [EMAIL PROTECTED] > >> >>> > >> >>> > >> >> > >> >> > >> >> -- > >> >> with regards > >> >> Sven Homburg > >> >> http://tapestry5-components.googlecode.com > >> >> > >> >> > >> >> ----- > >> >> best regards > >> >> Sven > >> >> > >> > > >> > > >> > >> -- > >> View this message in context: > >> http://www.nabble.com/T5%3A-Urgent-Problem.-After-clearing-cookies- > communication-between-client-and-tapestry-breaks-on-first-request- > tp17123771p17124838.html > >> Sent from the Tapestry - User mailing list archive at Nabble.com. > >> > >> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: [EMAIL PROTECTED] > >> For additional commands, e-mail: [EMAIL PROTECTED] > >> > >> > > > > > > -- > > with regards > > Sven Homburg > > http://tapestry5-components.googlecode.com > > > > > > ----- > > best regards > > Sven > > > > -- > View this message in context: http://www.nabble.com/T5%3A-Urgent-Problem.- > After-clearing-cookies-communication-between-client-and-tapestry-breaks- > on-first-request-tp17123771p17127537.html > 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]