超Wicket基本

新しくプロジェクト作ってとりあえず「Hello World!!」を表示させようとして失敗した。
原因がわからない。404が返ってきてしまう。途中でプロジェクト名を変えたのが原因なのかな。
新しくプロジェクト作ったら難なく動いた。

とりあえず

  • 新しい動的プロジェクト作る
  • JARファイルつっこむ
  • Applicationクラス作る
  • web.xmlいじる

こんなんか?

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>sample</display-name>
  <filter>
  	<filter-name>wicket</filter-name>
  	<filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class>
  	<init-param>
  		<param-name>applicationClassName</param-name>
  		<param-value>sample.WicketApplication</param-value>
  	</init-param>
  </filter>
  <filter-mapping>
  	<filter-name>wicket</filter-name>
  	<url-pattern>/*</url-pattern>
  </filter-mapping>

</web-app>

WicketApplication.java

import org.apache.wicket.Page;
import org.apache.wicket.protocol.http.WebApplication;

public class WicketApplication extends WebApplication{

	@Override
	public Class<HomePage> getHomePage() {
		// TODO 自動生成されたメソッド・スタブ
		return HomePage.class;
	}

}

HomePage.java

import org.apache.wicket.markup.html.WebPage;

public class HomePage extends WebPage{

	public HomePage() {
		super();
                add(new Label("test","Hello World"));
	}
}

HomePage.html

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Sample</title>
</head>
<body>
<div wicket:id="test" />
</body>
</html>

突っ込んだJARファイル

  • wicket-1.4.3.jar
  • wicket-extensions-1.4.3.jar
  • slf4j-log4j12-1.5.10.jar
  • slf4j-api-1.5.10.jar
  • log4j-1.2.15.jar
  • commons-codec-1.4.jar