The line below
pojo.setSampleText(pojo.getSampleText());
should be ignored.

Thanks,



nanotech wrote:
> 
> Hi All,
> 
> I have a simple requirement in which I want to display two different
> messages on Form Submit depending on whether or not the text field is
> filled in . The way I thought it should work is if I use combination of
> AjaxButton, WebMarkupContainer,<wicket:enclosure> and by overriding
> isVisible().
> The flow of sample application is. ..
> 1. When the Page Loads(first-time) it displays.."Not found" (which means
> nothing has been entered in textfield).[This is working as expected]
> 2. When I type in something to textfield and submit the form--it should
> display "Found" but its not displaying that message.[Not working as
> expected]
> 3. Also, When i clear the textfield and re-submit the form it should
> display "Not found".But this also does not happen.[Not working as
> expected]
> 
> In short, the state of the WebMarkupcontainer never gets updated after
> intial load.
> Can someone point out what am I missing?
> 
> Here is the code.
> 
> SamplePage.html
> 
> <body>
>       <form wicket:id="myForm">
>               <input type="text" wicket:id="sampleText" />
>               <input type="submit" wicket:id="sampleSubmit" />
>               <div wicket:id="resultContainer">
>                       <wicket:enclosure>
>                               [YES]
>                       </wicket:enclosure>
>                       <wicket:enclosure>
>                               [NO]
>                       </wicket:enclosure>             
>               </div>
>       </form>
> </body>
> 
> SamplePage.java
> 
> public class SamplePage extends WebPage {
>       public SamplePage() {
>               add(new SampleForm("myForm"));
>       }
> 
>       private class SampleForm extends Form {
>               public SampleForm(String id) {
>                       super(id);
>                       final SimplePOJO pojo = new SimplePOJO();
>                       setModel(new CompoundPropertyModel(pojo));
>                       add(new TextField("sampleText", new PropertyModel(pojo,
>                                       "sampleText")));
> 
>                       final WebMarkupContainer resultContainer = new 
> WebMarkupContainer(
>                                       "resultContainer");
>                       resultContainer.setOutputMarkupId(true);
>                       resultContainer.add(new Label("gotResults", "Found...") 
> {
>                               public boolean isVisible() {
>                                       return pojo.getSampleText() != null;
>                               }
>                       });
>                       resultContainer.add(new Label("noResults", "Not 
> found...") {
>                               public boolean isVisible() {
>                                       return pojo.getSampleText() == null;
>                               }
>                       });
> 
>                       add(new AjaxButton("sampleSubmit") {
>                               protected void onSubmit(AjaxRequestTarget 
> target, Form f) {
>                                       // If javascript is enabled on user's 
> browser.                                  
>                                       
> pojo.setSampleText(pojo.getSampleText());
>                                       if (target != null) {
>                                               // refresh the component.
>                                               
> target.addComponent(resultContainer);
>                                       }
>                               }
>                       });
> 
>                       add(resultContainer);
>               }
> 
>       }
> }
> 
> 
> SimplePOJO.java
> 
> public class SimplePOJO implements Serializable{
>       
>       private String sampleText;
> 
>       /**
>        * @return the sampleText
>        */
>       public String getSampleText() {
>               return sampleText;
>       }
> 
>       /**
>        * @param sampleText the sampleText to set
>        */
>       public void setSampleText(String sampleText) {
>               this.sampleText = sampleText;
>       }
> 
> }
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Enclosure-%2B-AjaxButton-tp18338994p18339061.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]

Reply via email to