📄 useraction.java
字号:
package com.eline.vod.security.struts;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.blue.web.common.util.AppSettings;
import com.eline.vod.security.Users;
import com.eline.vod.security.model.CreateUserStatus;
import com.eline.vod.security.model.User;
import com.eline.vod.utils.MyHttpClient;
import com.eline.vod.utils.SiteUrls2;
/**
*
* @author Lucifer
*
*/
public class UserAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
boolean isOK = false;
Integer action = null;
String returnURL = null;
if (form != null && form instanceof UserForm) {
UserForm userForm = (UserForm) form;
switch (userForm.getAction()) {
case UserForm.ACTION_REGISTER:
action = new Integer(userForm.getAction());
isOK = doUserRegistration(userForm, request, response);
if (isOK) {
returnURL = SiteUrls2.getInstance().getHomeURL();
} else {
returnURL = SiteUrls2.getInstance().getRegisterURL();
}
case 2:
action = new Integer(userForm.getAction());
isOK = true;
if (isOK) {
returnURL = SiteUrls2.getInstance().getHomeURL();
} else {
returnURL = SiteUrls2.getInstance().getRegisterURL();
}
}
}
request.setAttribute("act", action);
request.setAttribute("rt", returnURL);
return mapping.findForward(isOK ? "success" : "failure");
}
public boolean doUserRegistration(UserForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
/*
* get user's mobile pin with misc password.
* do PDA order.
* if ok then display welcome message.
* else tell user to check inputed info and try registration later.
*/
String msisdn = form.getMobilePIN();
String username = form.getUsername();
String verifyCode = form.getVerifyCode();
String cooperateCode = form.getCooperateCode();
int status = Users.validateNewUserExists(username, msisdn);
if (status == CreateUserStatus.UnknownFailure) {
// String url = SiteUrls2.getInstance().getProperty(SiteUrls2.URL_PDA_LOGIN) + "?mobile=" + msisdn + "&password=" + verifyCode;
String url = AppSettings.getInstance().getProperty("pdaLogin") + "?mobile=" + msisdn + "&password=" + verifyCode + "&cooperate=" + cooperateCode;
System.out.println("url=" + url);
String responseBody = MyHttpClient.getGetResponseAsString(url, "UTF-8");
// If failed to connect with remote url.
System.out.println("DEBUG: responseBody=" + responseBody);
if (responseBody == null || responseBody.length() < 1) {
System.err.println("TRACE: registration failed, invalid response body!");
return false;
}
if (responseBody.startsWith("e")) {
System.err.println("TRACE: registration failed, responseBody = " + responseBody);
return false;
}
User newUser = new User();
newUser.setUserName(form.getUsername());
newUser.setPassword(form.getPassword());
newUser.setMobilePIN(form.getMobilePIN());
newUser.setVerifyCode(form.getVerifyCode());
status = Users.create(newUser, false);
System.out.println("CreateUserStatus.Created=" + CreateUserStatus.Created);
System.out.println("struts.status=" + status);
}
String message;
switch (status) {
case CreateUserStatus.DisallowedUsername:
message = "无效的用户名";
break;
case CreateUserStatus.DuplicateMobilePIN:
message = "手机号码已存在";
break;
case CreateUserStatus.DuplicateUsername:
message = "用户名已存在";
break;
default:
message = "操作失败";
}
request.setAttribute("msg", message);
return status == CreateUserStatus.Created;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -