По
примеру из вики набросал код запрещающий выставлять логинам модуля DialUp пароли равные алиасу
Код:
package ru.ellcom.bgbilling.scripts.dialup;
import java.sql.SQLException;
import bitel.billing.server.dialup.action.ActionUpdateLoginInfo;
import ru.bitel.bgbilling.common.BGException;
import ru.bitel.bgbilling.common.BGMessageException;
public class UpdateLoginInfo
extends ActionUpdateLoginInfo
{
@Override
public void doAction()
throws SQLException, BGException
{
String pswd = getParameter("login_pswd", "");
String alias = getParameter("alias", "");
//String login =
if(pswd.equals(alias))
{
throw new BGMessageException( "Пароль не может быть равен алиасу логина" );
}
if(pswd.contains(alias))
{
throw new BGMessageException( "Пароль не может содержать алиас логина" );
}
// иначе вызываем родительский метод
super.doAction();
}
}
Строчка из дебага клиента
Код:
http://10.0.6.152:8080/bgbilling/executer?module=dialup&alias=test_router&object_id=0&login_pswd=753159&access=0&BGBillingSecret=cBrzUCExhbzXLnWY95pFdYSm&cid=2&lid=0&session=1&action=UpdateLoginInfo&date2=&mid=4&comment=&date1=07.03.2014&
Вопрос в следующем:
1) Дебаг клиента не показывает логин. Только ID логина.
Я бы хотел еще сделать проверку на то, чтобы пароль не содержал логин.
Как получить логин? В дебаге видно, что логин еще не был создан, так что получить его через LoginManager не представляется возможным.
2) В случае если не меняется одновременно алиас и пароль - дебаг клиента не показывает пароль или алиас. Только то, что было изменено. Т.е. в два захода можно выставить одинаковые алиас и пароль.
Как с этим быть?