@POST @Path("update") @Consumes(MediaType.APPLICATION_JSON) public String updateUserData(String json) throws JSONException, IOException, NonexistentEntityException, RollbackFailureException, Exception { JSONObject jObj = new JSONObject(json); try { int userId = jObj.getInt("userID"); String email = jObj.getString("email"); String password = jObj.getString("password"); String middleName = jObj.optString("middle_name"); String lastName = jObj.optString("last_name"); String street = jObj.optString("street"); String houseNumber = jObj.optString("house_number"); String postalCode = jObj.optString("postal_code"); String city = jObj.optString("city"); String country = jObj.optString("country"); Account account = dbManager.findById(Account.class, userId); account.setUserName(email); account.setPassword(password); User user = account.getUser(); user.setCity(city); user.setCountry(country); user.setHouseNumber(houseNumber); user.setLastName(lastName); user.setPostalCode(postalCode); user.setStreet(street); if (password != null && !password.isEmpty()) { dbManager.save(account); } dbManager.save(user); } catch (Exception ex) { Logger.getLogger(ChangeAccount.class.getName()).log(Level.SEVERE, null, ex); return jObj.put("result", true).toString(); } jObj = new JSONObject(); return jObj.put("result", true).toString(); }