I created a simple example.  Here is my html and java.  Once I get a
validation error my onSubmit is not called.


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
<html>
    <head>
        <title>Current Page</title>
        <link rel="stylesheet" href="dis.css" type="text/css" />
        <meta http-equiv="Content-Type"
            content="text/html; charset=ISO-8859-1" />
    </head>
    <body>
        <div id="myPage">
            <div id="feedbackContent">
                <span wicket:id="feedback" />
            </div>
            <form wicket:id="validateForm">
                <ul>
                    <li>
                        First Name:
                        <span wicket:id="borderFirstName"> <input
type="text"
                                wicket:id="firstName"></input> </span>
                    </li>
                </ul>
                <input type="submit" value="Update" />
            </form>
        </div>
        <!-- myPage -->
    </body>
</html>


public class Validate extends WebPage {
    private static final Logger log = Logger.getLogger(Validate.class);
    private String firstName;

    public Validate() {
        super();
        init();
    }

    private void init() {
        DisSession session = null;
        session = DisSession.get();
        setFirstName(session.getUser().getFirstName());

        setDefaultModel(new CompoundPropertyModel(this));

        Form form = new Form("validateForm") {
            DisSession session = null;

            @Override
            protected void onSubmit() {
                log.info("onSubmit called!");
            }
        };
        add(form);

        TextField firstName = new TextField("firstName");
        firstName.setRequired(true);
        form.add(new FormComponentFeedbackBorder("borderFirstName")
                .add(firstName));

        FeedbackPanel fbp = new FeedbackPanel("feedback");
        add(fbp);

    }

    public String getFirstName() {
        return firstName;
    }

    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }

}

Reply via email to