Quantcast
Channel: Active questions tagged servlets - Stack Overflow
Viewing all articles
Browse latest Browse all 717

problem in running servlet by click on button in jsp file using json parameters

$
0
0

When I click on the button in index.jsp, the servlet dosen't run.(Nothing actually happens)

I installed jdk17 and intellij and tomcat9.

All thing I do is: When I run the project in chrome the address is : http://localhost:8080/test_register_war_exploded/

Then I fill the form and click on button but nothing happen.

index.jsp

<form method="post"><table cellpadding="3pt"><tr><td>Firstname :</td><td><input type="text" name="firstname" size="50" class="add_register"/></td></tr><tr><td>Lastname :</td><td><input type="text" name="lastname" size="50" class="add_register"/></td></tr><tr><td>email :</td><td><input type="text" name="email" size="50" class="add_register"/></td></tr><tr><td>Password :</td><td><input type="password" name="password1" size="50" class="add_register"/></td></tr><tr><td>Confirm Password :</td><td><input type="password" name="password2" size="50" class="add_register"/></td></tr></table><p /><input type="button" value="Register" id="register"/></form>        ...<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script><script type="text/javascript">      $(document).ready(function() {        $("#register").click(function() {        let data = [];        let json = {};        let address_data = {};        $("input.add_register").each(function(){             json[this.name] = this.value;        });        data.push(json);        alert(JSON.stringify(data));        $.ajax({            url: '/register-controller',            type: 'POST',            data: data,            dataType: 'json',            contentType: 'application/json',            mimeType: 'application/json',        });    });});

RegisterController.java

@WebServlet(name = "registerController", value = "/register-controller")public class RegisterController extends HttpServlet {private UserJsonUtils jsonUtils;private User data;private UserDao userDao;final String userPath = "src/model/user/users.json";public void init() {    jsonUtils = new UserJsonUtils();    userDao = new UserDao();}protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {    data = jsonUtils.parseJson(request.getParameter("data"));    register();}public void register() {    User user = new User(data.getFirstName(),            data.getLastName(),            data.getEmail(),            data.getPassword());    userDao.save(user);}

}

UserDao.java

public class UserDao implements IUser {@Overridepublic void save(User user) {    Connection con = dbConnection.makeConnection();    PreparedStatement ps = null;    try {        ps = con.prepareStatement("insert into users (first_name,last_name, email, password) " +"values(?,?,?,?);",                Statement.RETURN_GENERATED_KEYS);        ps.setString(1, user.getFirstName());        ps.setString(2, user.getLastName());        ps.setString(3, user.getEmail());        ps.setString(4, user.getPassword());        int k = ps.executeUpdate();        if (k > 0) {            ResultSet rs = ps.getGeneratedKeys();            while (rs.next()) {                user.setId(rs.getLong(1));            }        }    } catch (SQLException e) {        e.printStackTrace();    }    dbConnection.closeConnection(ps);    dbConnection.closeConnection();}

UserJsonUtils.java

public class UserJsonUtils {private User data;public UserJsonUtils() {}public User getData() {    return data;}public void setData(User data) {    this.data = data;}public User parseJson(String params) {    Gson gson = new Gson();    data = gson.fromJson(params, User.class);    if (data != null)        return data;    else        return null;}public void writeToFile(String path, User user) throws IOException {    Gson gson = new Gson();    gson.toJson(user, new FileWriter(path));}

}


Viewing all articles
Browse latest Browse all 717

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>