ASP.NET MVCの後でWicketの学習を開始し、URLの管理についてちょっと混乱しています。ここでは、コードです:Wicket人間が読めるURL
アプリケーション:
package com.test.wicketapp1;
import org.apache.wicket.protocol.http.WebApplication;
public class WicketApplication extends WebApplication {
public WicketApplication() {
mountPage("/page1", HomePage.class);
mountPage("/page2", Page2.class);
}
@Override public Class<HomePage> getHomePage() {
return HomePage.class;
}
}
ホームページ:
package com.test.wicketapp1;
import java.io.IOException;
import org.apache.wicket.request.mapper.parameter.PageParameters;
import org.apache.wicket.markup.html.link.BookmarkablePageLink;
import org.apache.wicket.markup.html.WebPage;
public class HomePage extends WebPage {
private static final long serialVersionUID = 1L;
public HomePage(final PageParameters parameters) throws IOException {
BookmarkablePageLink<Page2> bookmarkablePageLink = new BookmarkablePageLink<Page2>("gopage2link", Page2.class);
add(bookmarkablePageLink);
}
}
ホームページマークアップ:
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
<head>
<title>Apache Wicket Quickstart</title>
</head>
<body>
<a href="#" wicket:id="gopage2link">go page 2</a>
</body>
</html>
私が持っていたかったのはかなり簡単です。 HomePage.classには "/ page1"、Page2.classには "/ page2"という2つのURLがあると予想していました。私のホームページはPage2に移動するリンクを持ち、HomePageがレンダリングされるとそのリンクは"/ページ2"。
私は、アプリケーションを実行し、ホームページに移動すると、次のようにレンダリングされます。代わりに
<a href="/page2" wicket:id="gopage2link">go page 2</a>
:私はのようなものを持っていることが予想
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
<head>
<title>Apache Wicket Quickstart</title>
</head>
<body>
<a href="./wicket/bookmarkable/com.test.wicketapp1.Page2" wicket:id="gopage2link">go page 2</a>
</body>
</html>
。私は何を取りこぼしたか?