Hi,
I would like to use Wicket authentication, as in the examples.
So I modified the Wicket QuickStart project to use authentication, like this:
public class WicketApplication extends AuthenticatedWebApplication {
public WicketApplication() {
}
public Class getHomePage() {
return HomePage.class;
}
@Override
protected Class<? extends WebPage> getSignInPageClass() {
return LoginPage.class;
}
@Override
protected Class<? extends AuthenticatedWebSession> getWebSessionClass() {
return WicketSession.class;
}
}
public class WicketSession extends AuthenticatedWebSession {
public WicketSession(AuthenticatedWebApplication application, Request
request) {
super(application, request);
}
@Override
public boolean authenticate(String arg0, String arg1) {
return false; // should block everybody
}
@Override
public Roles getRoles() {
return null;
}
}
HomePage.html has:
<a href="#" wicket:id="goto-admin">Admin page</a>
public class HomePage extends WebPage {
public HomePage(final PageParameters parameters) {
add(new PageLink("goto-admin", AdminPage.class));
}
}
LoginPage.html has:
<span wicket:id="signInPanel" />
public final class LoginPage extends SignInPage {
}
And finally, the admin page to protect:
@AuthorizeInstantiation("USER")
public class AdminPage extends WebPage {
}
The problem is that a click from the HomePage always brings the AdminPage,
without any
LoginPage displayed.
I used Wicket 1.3 beta4.
After reading the Wicket example and 2 tutorials on authentication, I really
can't see what I'm missing.
Any idea ?
Hugues