我有一个 zk 登录名,这是我的登录名:
<zk>
<window id="Mnos" border="normal" width="320px"
apply="org.zkoss.bind.BindComposer"
viewModel="@id('vm') @init('login.Login')">
Username: <textbox value="@save(vm.username)"/>
Password: <textbox value="@save(vm.password)" type="password" />
<button label="submit" onClick="@command('login')" />
</window>
</zk>
这是我的模型:
public class Login {
String username;
String password;
public void setUsername(String username) {
this.username = username;
}
public void setPassword(String password) {
this.password = password;
}
@Command
@NotifyChange({"username", "password"})
public void login() {
Users user = UsersDAO.getUserByEmail(username);
if(user != null && md5function.MD5(password).equals(user.getPassword())){
Executions.sendRedirect("/mainWindow.zul");
Sessions.getCurrent().setAttribute("sessionUser", user.getIdUser());
boolean role = false;
if(user.getIdRole().getTypeRole().equals("ADMINISTRATOR")){
role=true;
}
Sessions.getCurrent().setAttribute("sessionRole", role);
}else
Messagebox.show("email or password incorrect");
}
}
问题是我没有安全登录,用户无需登录即可转到另一个页面。
我的登录只验证用户和用户的密码是否存在于数据库中,我不知道如何将安全性集成到我的页面中。
我有两个角色:
Administrator
User
如果用户是管理员,我会保存一个sessionVariable
呼叫:sessionRole 为 true,但是,如果角色为 true,我会在某些选项卡中查看:可见 = true,我不知道它是否正常。
有人可以帮助我吗?
我在读:
但我不太了解配置
和其他例子使用maven,而我的项目没有使用maven =S