Я использую Struts 2 для регистрации пользователя.
Я использую вызов Ajax для регистрации пользователя. После регистрации я могу получить сообщение об успехе в функции успеха при вызове Ajax. Но он не перенаправляется на другой JSP, основываясь на успехе результата struts.xml.
register.jsp:
Вызов Ajax:
$.ajax({ // Ajax function to call the action
type : 'POST',
contentType : 'application/json',
url : 'user',
dataType : "html",
data : registerFormToJSON(),
success : function(html) {
alert("Successfully Registered");
},//End of success function in ajax call
error : function(err) {
console.log("Fail");
return true;
} //End of error function in ajax call
});
return false;
}
});
function registerFormToJSON() {
var data = JSON.stringify({
"userbean" : {
"username" : $("#username").val(),
"password" : $("#password").val(),
"firstname" : $("#first_name").val(),
"lastname" : $("#last_name").val(),
"confirmpassword" : $("#confirm_password").val(),
"email" : $("#email").val(),
"mobile" : $("#mobile").val(),
}
}); //End of getting form values and storing in json variable
alert(data);
return data;
}//End of function registerFormToJSON()
Метод класса действия:
public class UserController implements Action {
private UserBeans userbean;
/**
* @return the userbean
*/
public UserBeans getUserbean() {
return userbean;
}
/**
* @param userbean
* the userbean to set
*/
public void setUserbean(UserBeans userbean) {
this.userbean = userbean;
}
@Override
public String execute() {
return SUCCESS;
}
public String register() {
UserService service = new UserServiceImpl();
userbean = service.addorUpDateUser(userbean);
// response.setContentType("json");
return ActionSupport.SUCCESS;
}
}
Метод класса DAO:
public UserBeans addOrUpdateUser(UserBeans userBean) {
properties.load(inputStream);
con = conn.createConnection();
System.out.println("name is mine" + userBean.getUsername());
String encryptedPassword = PasswordUtil.encryptPassword(userBean.getPassword());
String query = properties.getProperty("users_query");
System.out.println(query);
System.out.println("connection:" + con);
preparedstatement = con.prepareStatement(query);
preparedstatement.setString(1, userBean.getUsername());
preparedstatement.setString(2, encryptedPassword);
preparedstatement.setString(3, userBean.getEmail());
preparedstatement.setString(4, userBean.getFirstname());
preparedstatement.setString(5, userBean.getLastname());
preparedstatement.setString(6, userBean.getMobile());
preparedstatement.setString(7, userBean.getConfirmpassword());
preparedstatement.executeUpdate(); // execute insert statement
logger.info("UserDaoImpl addOrUpDate Ends");
return userBean;
}
struts.xml:
true
/login.jsp
Подробнее здесь: https://stackoverflow.com/questions/235 ... -call-in-s
Как перенаправить на другой JSP после получения успешного результата с помощью вызова Ajax в Struts 2 ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение