やっとWicket開始

テストコード TestHomePage.java

package t_nagata;

import junit.framework.TestCase;

import org.apache.wicket.util.tester.WicketTester;
import org.junit.Before;
import org.junit.Test;
import org.apache.wicket.markup.html.form.Form;
import org.apache.wicket.markup.html.form.TextField;

import t_nagata.HomePage;

/**
 * Simple test using the WicketTester
 */
public class TestHomePage extends TestCase {
	private WicketTester tester;

	@Before
	public void setUp() {
		tester = new WicketTester();
		tester.startPage(HomePage.class);
	}
	@Test
	public void testRenderMyPage() {
		tester.assertRenderedPage(HomePage.class);
	}
	@Test
	public void testLabel() {
		tester.assertLabel("testmsg", "みずみずしい");
	}
	@Test
	public void testRenderInputForm() {
		tester.assertComponent("inputForm", Form.class);
		tester.assertComponent("inputForm:inputId", TextField.class);
	}
}

ページの実装 HomePage.java

package t_nagata;

import org.apache.wicket.PageParameters;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.form.Form;
import org.apache.wicket.markup.html.form.TextField;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.model.Model;

/**
 * Homepage
 */
public class HomePage extends WebPage {

	private static final long serialVersionUID = 1L;
	/**
	 * Constructor that is invoked when page is invoked without a session.
	 * 
	 * @param parameters
	 *            Page parameters
	 */
	public HomePage(final PageParameters parameters) {

		add(new Label("testmsg", "みずみずしい"));

		TextField<String> inputId = new TextField<String>("inputId",
				new Model<String>(""));
		Form<Object> inputForm = new Form<Object>("inputForm");

		inputForm.add(inputId);
		add(inputForm);

	}
}


ページのビュー HomePage.html

<html>
    <head>
        <title>Wicket Quickstart Archetype Homepage</title>
    </head>
    <body>
        <strong>Wicket Quickstart Archetype Homepage</strong>
        <br/><br/>
        <span wicket:id="testmsg">message will be here</span>
        <form wicket:id="inputForm">
        	<input type="text" wicket:id="inputId"></input>
        </form>
    </body>
</html>