System requirements for running wicket app in production
Hi all, are there any suggestions or experiences on the (minimum) system/hardware requirements for running a Wicket based application on a productive system? Would e.g. a Virtual Server as offered by most hosting providers be powerful enough to run a Java/Tomcat/Wicket/database application? I know this cannot be answered in general since it depends on the application itself (size of app, programmer skills), number of concurrent users, database, ... and as always: the more - the better. But maybe someone already running a Wicket app in production (e.g. from one of the Sites using Wicket - http://cwiki.apache.org/WICKET/sites-using-wicket.html)) can share information and experiences on this... (sorry if I've overseen information on this topic in the docs, Wiki or forum). Thanks in advance, Oliver -- View this message in context: http://www.nabble.com/System-requirements-for-running-wicket-app-in-production-tp16608729p16608729.html Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Wicket 1.3 rc1 Relative URLs not working properly
Hi, I encountered this problem a week ago, too, and digged a little into code and forum. Here's my summary: the problem seems to be the /* filter mapping. If you specify a /app/* filter mapping, relative URLs work just fine. In my base-page-class (all my pages are derived from it through Wicket's great markup inheritance) my stylesheet is referenced in the head-section by a relative reference like link rel=stylesheet type=text/css href=style/myapp.css / Checking the generated HTML in the browser (when using /* filter mapping) shows that this reference is modified by Wicket, so that it now reads link rel=stylesheet type=text/css href=../style/myapp.css / This is an invalid path and addresses a wrong location. I digged into the code and found that relative stylesheet and image references where automatically prepended by ../ by ServletWebRequest.getRelativePathPrefixToContextRoot(). This seems to work well for the /app/* filter mapping, but fails for /* (since theres no parent-directory in between to skip) I currently decided to use the /app/* filter mapping. Following workarounds came into my mind: 1. use of absolute references like /myapp/style/myapp.css. pro: works, Wicket doesn't modify the absolute paths cons: must code the context-path into all style and image references, which is a NO GO 2. use of /app/* filter mapping pro : works cons: after having seen the much nicer /* mapping I want to use it :-)) 3. in HTML it is possible to add a base href=http://localhost:8080/myapp// line into the head section, which is used to resolve all relative references pro : would be great, since it allows the use of relative URLs, and it must be configured in just one place (the base-page's head section) would also be great to use when using a front end server (Apache), since references would be resolved to root context cons: since Wicket isn't aware of the base tag, relative references are still modified and prepended by ../, so no stylesheets/images were found 4. fix it :-)) Related threads and infos: - is it a bug - use of /* filter mapping - http://www.nabble.com/is-it-a-bug--%28using-beta-4%29-tf4649929.html#a13284326 - Wicket behind a frontend proxy - http://www.nabble.com/Wicket-behind-a-front-end-proxy-t4776982.html - http://cwiki.apache.org/WICKET/best-practices-and-gotchas.html#BestPracticesandGotchas-WicketServletMapping Jeremy Levy-3 wrote: WICKET-1205 On Dec 3, 2007 5:16 PM, Jeremy Levy [EMAIL PROTECTED] wrote: Sorry for now explaining this properly. My application is deployed within a context of /1. The Wicket filter is mapped to /* of the app context. The first page of the site has url of http://www.somehost.com/1/welcomewhere welcome is mounted as a bookmarkable page. There is a link from the welcome page to a page that isn't bookmarked. The relative path of the CSS is incorrect on the page that isn't mounted as a bookmarkable page. If I make it bookmarkable the path to the CSS its correct. I'm going to create a quickstart project to demonstrate it and log a bug. J On Dec 3, 2007 4:40 PM, Johan Compagner [EMAIL PROTECTED] wrote: huh? i must be missing something here. you say to the first that it works and to the second that it doesn't if /1 is the context then would say the first is broken and the second should work. because the first the url is this: localhost/css/style.css but thats outside of the context. the second it seems to be localhost/1/css/xxx and that seems ok then But it is still strange that those 2 pages give different urls because both should be css/ as far as i see because they are on both on the same level. Please make a jira issue for this johan On Dec 3, 2007 4:08 PM, Jeremy Levy [EMAIL PROTECTED] wrote: The /1 is the web app context. Change it to ../ breaks it on the pages that were working before. One thing I noticed is that if I deploy this to a server which has mod_proxy set up to hide the /1 it seems to work fine. j On Dec 3, 2007 4:10 AM, Johan Compagner [EMAIL PROTECTED] wrote: and /1/ is your servlyet path? what happens if you put ../css/style.css in your markup? Because from the normal page that is the css you want i guess? johan On Dec 2, 2007 11:08 PM, Jeremy Levy [EMAIL PROTECTED] wrote: I just upgraded to Wicket 1.3, it was remarkably smooth. It took about 6 hours overall. Every single thing was explained very well in the migration guide and the things i was looking forward to in 1.3 are working perfectly. The only issue I am having is if I have a page this is not mounted as a bookmarkable page the relative paths for my stylesheet and other resources are written out incorrect. Below are examples for the same page
How to determine absolute URL of a mounted page?
Hi, is there a way to determine the complete, absolute URL to a mounted page (including protocol, host, port, application, filter and destination page)? I need this to be able to send a link to a Registration-Confirmation page to a user via email. I searched the forum already, but didn't find a working solution. All I found were messages saying that since Wicket 1.3 all URLs are relative. Reading the JavaDoc I also found various urlFor() and getRelativePath...() methods, all returning relative paths. What I would need is a method with a signature similar to url = getAbsolutePath(Request request, Class pageClass, PageParameters parameters) which returns an url like http://localhost:8080/myapp/app/page-alias?...params... Thanks for any hints on this, Oliver -- View this message in context: http://www.nabble.com/How-to-determine-absolute-URL-of-a-mounted-page--tf4864119.html#a13919803 Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: How to determine absolute URL of a mounted page?
Hi Sebastiaan, thanks for your answer. Excellent point on potential problems when using clusters, firewalls and proxies (I run into those already). I also thought on providing the URLs in a configuration file/spring config, but feared there might be a simple and preferred Wicket way to determine the URLs. Thanks alot, Oliver Sebastiaan van Erk wrote: What's wrong with putting this in a configuration file or just a constant. Because in general this does not really work. For example, your web server may be behind a proxy or firewall, it may be clustered (and thus you have many machines instead of just one and they can't all have the same hostname), they may be running on a port 1024 because of security concerns, with the firewall redirecting traffic on port 80 to the webserver. Personally I use spring and generally put the hostname/port combination in a properties file which spring uses to inject it into the application class. I have different properties files for dev and production which are activated by different maven profiles. However if you really want to do this (which I don't advise) you can use the HttpServletRequest to find your information using: getWebRequestCycle().getWebRequest().getHttpServletRequest() Regards, Sebastiaan Oliver Lieven wrote: Hi, is there a way to determine the complete, absolute URL to a mounted page (including protocol, host, port, application, filter and destination page)? I need this to be able to send a link to a Registration-Confirmation page to a user via email. I searched the forum already, but didn't find a working solution. All I found were messages saying that since Wicket 1.3 all URLs are relative. Reading the JavaDoc I also found various urlFor() and getRelativePath...() methods, all returning relative paths. What I would need is a method with a signature similar to url = getAbsolutePath(Request request, Class pageClass, PageParameters parameters) which returns an url like http://localhost:8080/myapp/app/page-alias?...params... Thanks for any hints on this, Oliver -- View this message in context: http://www.nabble.com/How-to-determine-absolute-URL-of-a-mounted-page--tf4864119.html#a13920421 Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Refreshing components with new data w/o altering the backing model
Hi, two week ago I had a similar problem (see Thread AutoCompleteTextfield---how to populate two input fields - tf4592192.html#a13166291) The solution was to have an autocomplete-list attached to the zipcode and the city-field. The list shows the valid zipcode-city combinations for the zipcode/city entered so far. When the user chooses an entry from the list, both fields are filled accordingly. To achieve this the AutoCompleteTextField's behavior was modified so that it is able to update two fields at once from the user's selection (with different values). In that way, entering the data occurs in the browser only, the model remains untouched until the user submits the form. (Indeed, a slightly different approach, but works great). regards, Oliver Matej Knopp-2 wrote: I think what you could try (though it would be a nasty hack :) ) is to set rawInput property on FormComponent. However, you'll need some introspection to do that, as it is private and we don't plan to provide an accessor for it :) -Matej On 10/23/07, karthik Guru [EMAIL PROTECTED] wrote: I have a form like this - Name: [.] Zip: [.] City: [.] State: [.] [Save] On filling the zip i want to auto populate the city and state. I can attach a AjaxFormComponentUpdatingBehavior to the zip field and do this. But I don't want to update the zip model, so i plan to have my version of AjaxFormComponentUpdatingBehavior and 'not' update the model. I can possibly get the user entered value from the convertedInput. But I don't want to want to update the city and the state model either to auto-populate the fields. Basically I want to hold off on the model updates until somebody clicks the save button. Can i set the converted input on a component and get it to refresh through Ajax? I know that I can do this through javascript ($(fieldId).value = ''blah blah')and add it to AjaxTarget. But i was wondering if i can just work with components (do setConvertedInput / something) and then add it to Ajaxtarget and make it work? -- karthik -- - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Refreshing-components-with-new-data-w-o-altering-the-backing-model-tf4675439.html#a13359783 Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Quick follow-up
Hi, what about using products.setOutputMarkupId(true) ? regards, Oliver Martijn Dashorst wrote: Is the products a repeater (ListView, RepeatingView, DataView)? Then it doesn't have its own markup (see for instance http://cwiki.apache.org/WICKET/how-to-repaint-a-listview-via-ajax.html). Martijn On 10/23/07, JohannesK [EMAIL PROTECTED] wrote: I managed to solve that problem, but i still cannot get the markup id to show up in my div. These two calls: products.setMarkupId(productlist+item.getIndex()); products.setOutputMarkupPlaceholderTag(true); don't seem to do anything. I can change the class of the div just fine with a SimpleAttributeModifier, but for the div id i can't get it to work. -- View this message in context: http://www.nabble.com/Wicket-id-vs.-markup-id-%28wicket-1.3.0-beta4%29-tf4677248.html#a13364719 Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Buy Wicket in Action: http://manning.com/dashorst Apache Wicket 1.3.0-beta4 is released Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.3.0-beta4/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Wicket-id-vs.-markup-id-%28wicket-1.3.0-beta4%29-tf4677248.html#a13365854 Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: AutoCompleteTextfield - how to populate two input fields
Hi, thanks for your answer. No, solution didn't work as supposed, mainly because the AutoComplete fills the input field in the browser with the data (in my case either zipcode or city), but doesn't update the model. To update the model I have to attach some Ajax...Behavior, but this is called with the data put into the textfield (i.e. either the selected zipcode put into the zipcode field by the autocomplete, *or* the selected city from the city field). In the Ajax...Behavior's onUpdate()-method neither the city nor the zipcode are enough to determine the value to use to update the related field. So I had two other ideas: 1. in my autocomplete-list I set the textvalue to the id of a zipcode-city combination. When the user selects from the autocomplete-list, this id is written into the corresponding input-field. The attached AjaxOnChangeBehavior now gets this id, determines the zipcode-city, and updates the city and the zipcode field. This works, but looks a little strange to the user (e.g. selection of 71254 Ditzingen from autocomplete-list writes the id (1223) into the zipcode-field, this issues the Ajax-call, which updates both fields with the correct data, i.e. zipcode=71254, city=Ditzingen). As I said, works but not pretty. 2. So I'm currently extended the AutoCompleteTextField, ...Renderer, ...Behavior, ..JavaScript to accept a second, related field in its constructor. I then attach two attributes to the autocomplete-list entries (say textvalue and textvalue2), and modified the JavaScript to update both fields. This seems to me the best approach to my specific problem, and seems to work as intended. Hope my answer was not to confusing... regards, Oliver German Morales wrote: Hi, Sorry, i'm a little late with my response. Did the suggestion by Nino work? If it works, i would like to know more details about it. If not, we already had a somehow similar problem (Swiss addresses), and we have a different solution already working. Perhaps it can help you too. Regards, German It seems that Nino Saturnino Martinez Vazquez Wael wrote: NP, waiting with excitement to hear if it works:) Oliver Lieven wrote: Thanks allot for your efforts and detailed answer! Sounds good, I'll give it a try. Nino.Martinez wrote: No what I meant was that when a user selects something in one of your auto complete fields they'll automatickly select something in both, might have been a little scares on information: IModel commonModel=new Model(); AbstractModel() Text=new AbstractModel(){ getObject{ return commonModel.getObject.Text; } setObject(obj){ commonModel.setObject(obj) } } AbstractModel() name=new AbstractModel(){ getObject{ return commonModel.getObject.name; } setObject(obj){ commonModel.setObject(obj) } } AutoCompleteTextField phoneName = new AutoCompleteTextField( phoneName, name, new BestEffortRendererAutoCompleteRenderer()) { @Override protected Iterator getChoices(String input) { return findItems(input); } }; AutoCompleteTextField phoneSeries = new AutoCompleteTextField( phoneName, text, new BestEffortRendererAutoCompleteRenderer()) { @Override protected Iterator getChoices(String input) { return findItems(input); } }; And ofcourse you need to add the other completefield to the ajaxresponse... Hope this pseudo code works a little better... Was on my way out the door before... Oliver Lieven wrote: Hi Nino, thanks for your fast reply. Yes, a shared PropertyModel would help to keep both fields synchronized. I still can't see how this could help me to determine the value selected by the user. The AutoComplete works like 1. getChoices() is called to populate the autocomplete list with my zipcode - city options 2. when user selects a value from the autocomplete list, the corresponding field is set with the textvalue (e.g. the 'city' field is filled with the city's name) 3. because of this update, the city-field's AjaxFormComponentUpdatingBehavior.onUpdate() is called 4. in onUpdate() the getConvertedInput() method returns the city name, which is insufficient to determine the corresponding zipcode (because of the n:1 relation (city may have many zipcodes)). So I'm still looking for a way to determine the exact combination selected by the user... regards, Oliver Nino.Martinez wrote: Quick answer, why not use property models and use both in the fiields you mention? Oliver Lieven wrote: Hi, in an address edit panel I've got the two AutoCompleteText fields 'zipcode' and 'city'. When a users begins typing into the zipcode-field, the autocomplete shows up and offers valid zipcode - city combinations. After selecting a value from the autocomplete the 'zipcode' is set. Same
Re: AutoCompleteTextfield - how to populate two input fields
Hi German, thanks for your offer, would be great if you could send me your code. BTW, in the meantime I got my 2nd approach working, too. I've got the two separate textfields, each of them showing the zipcode - city autocomplete lists when data is entered. After selecting from the autocomplete list, both fields are updated correctly! Regards, Oliver German Morales wrote: Hi again, Yes, we have something similar to what you describe in your point 2. The only difference is that we have other structure. What we have is the following: -Each locality has an internal ID, a Zip Code, a City and a (swiss) kanton. -in the html we have a Hidden, which stores the internal ID, and 1 (only) TextField, which shows Zip Code + City + Canton (For example: 8052 Seebach, ZH). -then we have an extension as you mention (AutoCompleteTextField, Renderer, Behavior, JavaScript), which is already working with this schema. It also contains many fixes over the original autocompletetextfield (perhaps originated from the extra behavior?). If this approach is good for you, i can send you our version, plus some example usages. Regards, German It seems that Oliver Lieven wrote: Hi, thanks for your answer. No, solution didn't work as supposed, mainly because the AutoComplete fills the input field in the browser with the data (in my case either zipcode or city), but doesn't update the model. To update the model I have to attach some Ajax...Behavior, but this is called with the data put into the textfield (i.e. either the selected zipcode put into the zipcode field by the autocomplete, *or* the selected city from the city field). In the Ajax...Behavior's onUpdate()-method neither the city nor the zipcode are enough to determine the value to use to update the related field. So I had two other ideas: 1. in my autocomplete-list I set the textvalue to the id of a zipcode-city combination. When the user selects from the autocomplete-list, this id is written into the corresponding input-field. The attached AjaxOnChangeBehavior now gets this id, determines the zipcode-city, and updates the city and the zipcode field. This works, but looks a little strange to the user (e.g. selection of 71254 Ditzingen from autocomplete-list writes the id (1223) into the zipcode-field, this issues the Ajax-call, which updates both fields with the correct data, i.e. zipcode=71254, city=Ditzingen). As I said, works but not pretty. 2. So I'm currently extended the AutoCompleteTextField, ...Renderer, ...Behavior, ..JavaScript to accept a second, related field in its constructor. I then attach two attributes to the autocomplete-list entries (say textvalue and textvalue2), and modified the JavaScript to update both fields. This seems to me the best approach to my specific problem, and seems to work as intended. Hope my answer was not to confusing... regards, Oliver German Morales wrote: Hi, Sorry, i'm a little late with my response. Did the suggestion by Nino work? If it works, i would like to know more details about it. If not, we already had a somehow similar problem (Swiss addresses), and we have a different solution already working. Perhaps it can help you too. Regards, German It seems that Nino Saturnino Martinez Vazquez Wael wrote: NP, waiting with excitement to hear if it works:) Oliver Lieven wrote: Thanks allot for your efforts and detailed answer! Sounds good, I'll give it a try. Nino.Martinez wrote: No what I meant was that when a user selects something in one of your auto complete fields they'll automatickly select something in both, might have been a little scares on information: IModel commonModel=new Model(); AbstractModel() Text=new AbstractModel(){ getObject{ return commonModel.getObject.Text; } setObject(obj){ commonModel.setObject(obj) } } AbstractModel() name=new AbstractModel(){ getObject{ return commonModel.getObject.name; } setObject(obj){ commonModel.setObject(obj) } } AutoCompleteTextField phoneName = new AutoCompleteTextField( phoneName, name, new BestEffortRendererAutoCompleteRenderer()) { @Override protected Iterator getChoices(String input) { return findItems(input); } }; AutoCompleteTextField phoneSeries = new AutoCompleteTextField( phoneName, text, new BestEffortRendererAutoCompleteRenderer()) { @Override protected Iterator getChoices(String input) { return findItems(input); } }; And ofcourse you need to add the other completefield to the ajaxresponse... Hope this pseudo code works a little better... Was on my way out the door before... Oliver Lieven wrote: Hi Nino, thanks for your fast reply. Yes, a shared PropertyModel would help to keep both fields
Re: AutoCompleteTextfield - how to populate two input fields
Hi Nino, thanks for your fast reply. Yes, a shared PropertyModel would help to keep both fields synchronized. I still can't see how this could help me to determine the value selected by the user. The AutoComplete works like 1. getChoices() is called to populate the autocomplete list with my zipcode - city options 2. when user selects a value from the autocomplete list, the corresponding field is set with the textvalue (e.g. the 'city' field is filled with the city's name) 3. because of this update, the city-field's AjaxFormComponentUpdatingBehavior.onUpdate() is called 4. in onUpdate() the getConvertedInput() method returns the city name, which is insufficient to determine the corresponding zipcode (because of the n:1 relation (city may have many zipcodes)). So I'm still looking for a way to determine the exact combination selected by the user... regards, Oliver Nino.Martinez wrote: Quick answer, why not use property models and use both in the fiields you mention? Oliver Lieven wrote: Hi, in an address edit panel I've got the two AutoCompleteText fields 'zipcode' and 'city'. When a users begins typing into the zipcode-field, the autocomplete shows up and offers valid zipcode - city combinations. After selecting a value from the autocomplete the 'zipcode' is set. Same for 'city' field, i.e. after selecting a zipcode - city from the city's autocomplete the city-field is set accordingly. (Thanks for the great autocomplete-support in Wicket which allows separation of displayvalue and textvalue!) Now to my question: after selection of a zipcode - city combination from either autocomplete list I would like to set both fields (zipcode and city). I already attached an AjaxFormComponentUpdatingBehavior which gets called after a selection in the autocomplete list, but it just gets the zipcode/city currently set. Since the zipcode-city relation is 1:n (e.g. Berlin has many zipcodes) I'm wondering if there is a way to access the full selected value (and not only the AbstractAutoCompleteTextRenderer.textvalue set). Thanks for any help and tips! Oliver - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/AutoCompleteTextfield---how-to-populate-two-input-fields-tf4592192.html#a13109927 Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: AutoCompleteTextfield - how to populate two input fields
Thanks allot for your efforts and detailed answer! Sounds good, I'll give it a try. Nino.Martinez wrote: No what I meant was that when a user selects something in one of your auto complete fields they'll automatickly select something in both, might have been a little scares on information: IModel commonModel=new Model(); AbstractModel() Text=new AbstractModel(){ getObject{ return commonModel.getObject.Text; } setObject(obj){ commonModel.setObject(obj) } } AbstractModel() name=new AbstractModel(){ getObject{ return commonModel.getObject.name; } setObject(obj){ commonModel.setObject(obj) } } AutoCompleteTextField phoneName = new AutoCompleteTextField( phoneName, name, new BestEffortRendererAutoCompleteRenderer()) { @Override protected Iterator getChoices(String input) { return findItems(input); } }; AutoCompleteTextField phoneSeries = new AutoCompleteTextField( phoneName, text, new BestEffortRendererAutoCompleteRenderer()) { @Override protected Iterator getChoices(String input) { return findItems(input); } }; And ofcourse you need to add the other completefield to the ajaxresponse... Hope this pseudo code works a little better... Was on my way out the door before... Oliver Lieven wrote: Hi Nino, thanks for your fast reply. Yes, a shared PropertyModel would help to keep both fields synchronized. I still can't see how this could help me to determine the value selected by the user. The AutoComplete works like 1. getChoices() is called to populate the autocomplete list with my zipcode - city options 2. when user selects a value from the autocomplete list, the corresponding field is set with the textvalue (e.g. the 'city' field is filled with the city's name) 3. because of this update, the city-field's AjaxFormComponentUpdatingBehavior.onUpdate() is called 4. in onUpdate() the getConvertedInput() method returns the city name, which is insufficient to determine the corresponding zipcode (because of the n:1 relation (city may have many zipcodes)). So I'm still looking for a way to determine the exact combination selected by the user... regards, Oliver Nino.Martinez wrote: Quick answer, why not use property models and use both in the fiields you mention? Oliver Lieven wrote: Hi, in an address edit panel I've got the two AutoCompleteText fields 'zipcode' and 'city'. When a users begins typing into the zipcode-field, the autocomplete shows up and offers valid zipcode - city combinations. After selecting a value from the autocomplete the 'zipcode' is set. Same for 'city' field, i.e. after selecting a zipcode - city from the city's autocomplete the city-field is set accordingly. (Thanks for the great autocomplete-support in Wicket which allows separation of displayvalue and textvalue!) Now to my question: after selection of a zipcode - city combination from either autocomplete list I would like to set both fields (zipcode and city). I already attached an AjaxFormComponentUpdatingBehavior which gets called after a selection in the autocomplete list, but it just gets the zipcode/city currently set. Since the zipcode-city relation is 1:n (e.g. Berlin has many zipcodes) I'm wondering if there is a way to access the full selected value (and not only the AbstractAutoCompleteTextRenderer.textvalue set). Thanks for any help and tips! Oliver - 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/AutoCompleteTextfield---how-to-populate-two-input-fields-tf4592192.html#a13111019 Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
AutoCompleteTextfield - how to populate two input fields
Hi, in an address edit panel I've got the two AutoCompleteText fields 'zipcode' and 'city'. When a users begins typing into the zipcode-field, the autocomplete shows up and offers valid zipcode - city combinations. After selecting a value from the autocomplete the 'zipcode' is set. Same for 'city' field, i.e. after selecting a zipcode - city from the city's autocomplete the city-field is set accordingly. (Thanks for the great autocomplete-support in Wicket which allows separation of displayvalue and textvalue!) Now to my question: after selection of a zipcode - city combination from either autocomplete list I would like to set both fields (zipcode and city). I already attached an AjaxFormComponentUpdatingBehavior which gets called after a selection in the autocomplete list, but it just gets the zipcode/city currently set. Since the zipcode-city relation is 1:n (e.g. Berlin has many zipcodes) I'm wondering if there is a way to access the full selected value (and not only the AbstractAutoCompleteTextRenderer.textvalue set). Thanks for any help and tips! Oliver -- View this message in context: http://www.nabble.com/AutoCompleteTextfield---how-to-populate-two-input-fields-tf4592192.html#a13109510 Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Given a Page subclass and its PageParameters, how to determine the URL string?
Hi, I'm doing this by mounting an alias-name to the page in the application's init()-method by calling WebApplication.mountBookmarkablePage( java.lang.String path,java.lang.Class bookmarkablePageClass) e.g. mountBookmarkablePage(verifyEmail, VerifyEmailPage.class) Then you can send an email with a link like www.yourapp.com/verifyEmail?...params ... Regards, Oliver Justin Morgan (Logic Sector) wrote: Hi, (I've poked around the Wicket mailing list archives and FAQ and haven't seen an obvious solution for this.) My question: How do I to determine in advance what the encrypted URL string of a page (plus its parameters) will be? In case it matters, I'm using CryptedUrlWebRequestCodingStrategy. The reason for the question: I've created a rudimentary VerifyEmailPage in my app that takes an email address as a page parameter. A URL string will be put in an email message and sent to a user when that user creates an account. (The URL string accesses the VerifyEmailPage.) The user then clicks on the URL in the email in order to validate the email address. I need a way to determine what that URL should be (so I can send the URL to them). Thanks for any info, Justin - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Given-a-Page-subclass-and-its-PageParameters%2C-how-to-determine-the-URL-string--tf4278204.html#a12177813 Sent from the Wicket - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]