Wicketの単純なhello worldの例では、Wicket Webアプリケーションの基本構造を示しています。

この記事で使用されているツールとテクノロジ

  1. Apache Wicket 1.4.17

  2. Eclipse 3.6

  3. Maven 3.0.3

  4. JDK 1.6.0.13

1.ディレクトリ構造

このWicket hello world Webアプリケーションの最終的なディレクトリ構造を参照してください。 Wicketでは、すべてのファイル “.html”と “.java”を同じパッケージディレクトリに置く必要があります。

下記の図を参照してください。


wicketディレクトリ構造、title = "wicket-hello-world-folder"、width = 478、height = 359

次の手順に従ってディレクトリ構造全体を作成します。

2. Mavenのクイックスタート

Mavenを使用して簡単なWebアプリケーションを作成します。

mvn archetype:generate -DgroupId=com.mkyong.core -DartifactId=WicketExamples
 -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

これで、標準のWebフォルダ構造がすべて作成されます。

3.ウィッケットの依存性

あなたのMaven `pom.xml`ファイルにWicket依存関係を追加してください。

ファイル:pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
    http://maven.apache.org/maven-v4__0__0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.mkyong.core</groupId>
    <artifactId>WicketExamples</artifactId>
    <packaging>war</packaging>
    <version>1.0-SNAPSHOT</version>
    <name>WicketExamples</name>
    <url>http://maven.apache.org</url>

    <dependencies>

        <dependency>
            <groupId>org.apache.wicket</groupId>
            <artifactId>wicket</artifactId>
            <version>1.4.17</version>
        </dependency>

        <!-- slf4j-log4j -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.5.6</version>
        </dependency>

    </dependencies>

    <build>
        <finalName>WicketExamples</finalName>

                <resources>
            <resource>
                <directory>src/main/resources</directory>
            </resource>
            <resource>
                <filtering>false</filtering>
                <directory>src/main/java</directory>
                <includes>
                    <include>** </include>
                </includes>
                <excludes>
                    <exclude>** ** /** .java</exclude>
                </excludes>
            </resource>
        </resources>

        <plugins>
            <plugin>
                <inherited>true</inherited>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.6</source>
                    <target>1.6</target>
                    <optimise>true</optimise>
                    <debug>true</debug>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

  • WicketはSLF4Jを必要とします!** slf4jのログ実装をインクルードする必要があります。そうしないと、Wicketは起動に失敗します。

  • Wicketはリソースフィルターを必要とします

    リソースフィルターを追加することを忘れないでください.Wicketはすべてのファイルを同じパッケージフォルダーに置きます。

    “include”

    </include>

    “、” html ” 、 “プロパティ”またはその他のリソースファイルが正しいターゲットフォルダにコピーできなかった可能性があります。

4. Wicketアプリケーション

Wicketでは、大部分のものは規約で

働いていますので、設定する必要はありません。この場合、 `WebApplication`はWicketがこの”

Hello.class

“を見ると、” html “ページが”

Hello.html ** “でなければならないマークアップを知っているので、デフォルトページとして” Hello.class “同じパッケージディレクトリで見つけることができるはずです。これがWicketが “html”クラスと “java”クラスを一緒に使う必要がある理由です。

ファイル:MyApplication.java – メインアプリケーションの入り口。

package com.mkyong;

import org.apache.wicket.Page;
import org.apache.wicket.protocol.http.WebApplication;
import com.mkyong.hello.Hello;

public class MyApplication extends WebApplication {

    @Override
    public Class<? extends Page> getHomePage() {
        return Hello.class;//return default page
    }

}


File:Hello.java

package com.mkyong.hello;

import org.apache.wicket.PageParameters;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.WebPage;

public class Hello extends WebPage {

    private static final long serialVersionUID = 1L;

    public Hello(final PageParameters parameters) {

        add(new Label("message", "Hello World, Wicket"));

    }
}


File:Hello.html

<html>
    <head>
        <title>Wicket Hello World</title>
    </head>
    <body>
      <h1>
        <span wicket:id="message">message will be replace later</span>
      </h1>
    </body>
</html>

5.ウィケットフィルター

Wicketを動作させるには、 `web.xml`ファイルにWicketフィルタを登録する必要があります。


File:web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
    http://java.sun.com/xml/ns/j2ee/web-app__2__4.xsd"
    version="2.4">
    <display-name>Wicket Web Application</display-name>

    <filter>
        <filter-name>wicket.wicketTest</filter-name>
        <filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class>
        <init-param>
            <param-name>applicationClassName</param-name>
            <param-value>com.mkyong.MyApplication</param-value>
        </init-param>
    </filter>

    <filter-mapping>
        <filter-name>wicket.wicketTest</filter-name>
        <url-pattern>/** </url-pattern>
    </filter-mapping>

</web-app>

6.それを構築する

すべてのファイルは準備ができており、Mavenでビルドできます。

mvn eclipse:eclipse -Dwtpversion=2.0

Eclipseにインポートしてプロジェクトを開始します。

7.テストする


Wicket hello world、title = "wicket-hello-world-result"、width = 640、height = 284

完了しました。

ダウンロードする – リンク://wp-content/uploads/2009/02/Wicket-HelloWorld-Examples.zip[Wicket-HelloWorld-Examples.zip](6KB)