背景
现有需求,需要校验输入的用户名和密码是否正确
1、直接登录测试
该种方式确实能实现校验,但登录需要时间,也浪费许可名额
2、使用checkPassword方法
public static boolean checkPassword(ModelObject user,String password) throws ServiceException{
ICTService m_service = ICTService.getService( AppXSession.getConnection() );
Arg[] args_ = new Arg[4];
args_[0] = new Arg();
args_[0].val = "User";
args_[1] = new Arg();
args_[1].val = "TYPE::User::User::POM_user";
args_[2] = new Arg();
args_[2].val = user.getUid();
args_[3] = new Arg();
args_[3].val = password;
InvokeICTMethodResponse response = m_service.invokeICTMethod("ICCTUser", "checkPassword", args_);
if( response.serviceData.sizeOfPartialErrors() > 0)
{
return false;
}
Arg[] output = response.output;
String val = output[0].val;
if ("true".equals(val)) {
return true;
}
return false;
}
密码正确,返回true,错误返回false