Первый этап исправления ошибок (не проверял)

This commit is contained in:
Igor I
2024-12-19 09:59:00 +05:00
parent 9ec747cf4b
commit 0e5e3f04af

View File

@ -120,19 +120,21 @@ public class MainController implements ServletContextAware {
this.jdbcTemplate = jdbcTemplate; this.jdbcTemplate = jdbcTemplate;
} }
public String createStrJSONError(int code, String message, String marker) { public String createStrJSONError(int code, String message, String setting, String marker) {
JSONObject json = new JSONObject(); JSONObject json = new JSONObject();
json.put("error_code", code); json.put("error_code", code);
json.put("error_message", message); json.put("error_message", Arrays.asList(message));
json.put("error_setting", Arrays.asList(setting));
json.put("error_marker", marker); json.put("error_marker", marker);
return json.toString(); return json.toString();
} }
public JSONObject createJSONError(int code, String message, String marker) { public JSONObject createJSONError(int code, String message, String setting, String marker) {
JSONObject json = new JSONObject(); JSONObject json = new JSONObject();
json.put("error_code", code); json.put("error_code", code);
json.put("error_message", message); json.put("error_message", Arrays.asList(message));
json.put("error_marker", marker); json.put("error_setting", Arrays.asList(setting));
json.put("error_marker", Arrays.asList(setting));
return json; return json;
} }
@ -292,7 +294,7 @@ public class MainController implements ServletContextAware {
.build() .build()
.parseClaimsJws(jwt_a); .parseClaimsJws(jwt_a);
} catch (Exception e) { } catch (Exception e) {
return createStrJSONError(10000, trt.trt("JWT_token_verification_error"),null); return createStrJSONError(10000, trt.trt("JWT_token_verification_error"),(String)null,(String)null);
} }
String sql = """ String sql = """
select select
@ -318,11 +320,11 @@ public class MainController implements ServletContextAware {
} catch (BadSqlGrammarException e) { } catch (BadSqlGrammarException e) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
logger.error(uuid,e); logger.error(uuid,e);
json = createJSONError(10000,trt.trt("Error_executing_SQL_query")+" "+e.getMessage(), uuid); json = createJSONError(10000,trt.trt("Error_executing_SQL_query"),(String)null, uuid);
} catch (Exception e) { } catch (Exception e) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
logger.error(uuid,e); logger.error(uuid,e);
json = createJSONError(10000,trt.trt("Internal_Server_Error")+" "+e.getMessage(), uuid); json = createJSONError(10000,trt.trt("Internal_Server_Error"),(String)null, uuid);
} }
return json.toString(); return json.toString();
} }
@ -390,7 +392,7 @@ public class MainController implements ServletContextAware {
} catch (Exception e) { } catch (Exception e) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
logger.error(uuid,e); logger.error(uuid,e);
json = createJSONError(10000,trt.trt("Internal_Server_Error")+" "+e.getMessage(), uuid); json = createJSONError(10000,trt.trt("Internal_Server_Error"),(String)null, uuid);
} }
return json.toString(); return json.toString();
} }
@ -401,10 +403,10 @@ public class MainController implements ServletContextAware {
Translation trt = new Translation(language_id,jdbcTemplate); Translation trt = new Translation(language_id,jdbcTemplate);
String result=createStrJSONError(10000,trt.trt("Request_not_processed"),null); String result=createStrJSONError(10000,trt.trt("Request_not_processed"), (String)null, (String)null);
if(jwt_a.equals("") || countOccurrences(jwt_a, '.')!=2) if(jwt_a.equals("") || countOccurrences(jwt_a, '.')!=2)
{ {
result=createStrJSONError(10000,trt.trt("Please_send_a_valid_JWT_token"),null); result=createStrJSONError(10000,trt.trt("Please_send_a_valid_JWT_token"), (String)null, (String)null);
return result; return result;
} }
@ -418,7 +420,7 @@ public class MainController implements ServletContextAware {
.build() .build()
.parseClaimsJws(jwt_a); .parseClaimsJws(jwt_a);
} catch (Exception e) { } catch (Exception e) {
return createStrJSONError(10000, trt.trt("JWT_token_verification_error"),null); return createStrJSONError(10000, trt.trt("JWT_token_verification_error"),(String)null,(String)null);
} }
String sql = """ String sql = """
select select
@ -499,7 +501,7 @@ public class MainController implements ServletContextAware {
} catch (Exception e) { } catch (Exception e) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
logger.error(uuid,e); logger.error(uuid,e);
json = createJSONError(10000,trt.trt("Internal_Server_Error")+" "+e.getMessage(), uuid); json = createJSONError(10000,trt.trt("Internal_Server_Error"), (String)null, uuid);
} }
return json.toString(); return json.toString();
} }
@ -632,7 +634,7 @@ public class MainController implements ServletContextAware {
} catch (Exception e) { } catch (Exception e) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
logger.error(uuid,e); logger.error(uuid,e);
json = createJSONError(10000,trt.trt("Internal_Server_Error")+" "+e.getMessage(), uuid); json = createJSONError(10000,trt.trt("Internal_Server_Error"), (String)null, uuid);
} }
return json.toString(); return json.toString();
} }
@ -697,7 +699,7 @@ public class MainController implements ServletContextAware {
catch (Exception e) { catch (Exception e) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
logger.error(uuid,e); logger.error(uuid,e);
json = createJSONError(10000,trt.trt("Internal_Server_Error")+" "+e.getMessage(), uuid); json = createJSONError(10000,trt.trt("Internal_Server_Error"), (String)null, uuid);
} finally { } finally {
//try { if(conn!=null) conn.close(); } catch (SQLException e) { throw new RuntimeException(e); } //try { if(conn!=null) conn.close(); } catch (SQLException e) { throw new RuntimeException(e); }
} }
@ -747,7 +749,7 @@ public class MainController implements ServletContextAware {
{ {
throw new CustomException(10000, trt.trt("The_user_account_is_blocked"),null); throw new CustomException(10000, trt.trt("The_user_account_is_blocked"),null);
}else{ }else{
throw new CustomException(10000, trt.trt("The_limit_of_authorization_attempts_has_been_exceeded_please_wait_s_minutes"), json.getInt("limit_duration"),(String)null); throw new CustomException(10000, trt.trt("The_limit_of_authorization_attempts_has_been_exceeded_please_wait_s_minutes"), String.valueOf(json.getInt("limit_duration")),(String)null);
} }
} }
if(json.has("count") && json.has("limit_count") && json.has("limit_duration")) { if(json.has("count") && json.has("limit_count") && json.has("limit_duration")) {
@ -967,7 +969,7 @@ public class MainController implements ServletContextAware {
} catch (Exception e) { } catch (Exception e) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
logger.error(uuid,e); logger.error(uuid,e);
json = createJSONError(10000,trt.trt("Internal_Server_Error"), uuid); json = createJSONError(10000,trt.trt("Internal_Server_Error"), (String)null, uuid);
} finally { } finally {
//try { if(conn!=null) conn.close(); } catch (SQLException e) { throw new RuntimeException(e); } //try { if(conn!=null) conn.close(); } catch (SQLException e) { throw new RuntimeException(e); }
} }
@ -1018,7 +1020,7 @@ public class MainController implements ServletContextAware {
{ {
throw new CustomException(10000, trt.trt("The_user_account_is_blocked"),null); throw new CustomException(10000, trt.trt("The_user_account_is_blocked"),null);
}else{ }else{
throw new CustomException(10000, trt.trt("The_limit_of_authorization_attempts_has_been_exceeded_please_wait_s_minutes"), json.getInt("limit_duration"),(String)null); throw new CustomException(10000, trt.trt("The_limit_of_authorization_attempts_has_been_exceeded_please_wait_s_minutes"), String.valueOf(json.getInt("limit_duration")),(String)null);
} }
} }
if(json.has("count") && json.has("limit_count") && json.has("limit_duration")) { if(json.has("count") && json.has("limit_count") && json.has("limit_duration")) {
@ -1124,7 +1126,7 @@ public class MainController implements ServletContextAware {
} catch (Exception e) { } catch (Exception e) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
logger.error(uuid,e); logger.error(uuid,e);
json = createJSONError(10000,trt.trt("Internal_Server_Error"), uuid); json = createJSONError(10000,trt.trt("Internal_Server_Error"), (String)null, uuid);
} finally { } finally {
//try { if(conn!=null) conn.close(); } catch (SQLException e) { throw new RuntimeException(e); } //try { if(conn!=null) conn.close(); } catch (SQLException e) { throw new RuntimeException(e); }
} }
@ -1140,7 +1142,7 @@ public class MainController implements ServletContextAware {
setRefreshCookie(response, request, ""); setRefreshCookie(response, request, "");
return createStrJSONError(0,"",null); return createStrJSONError(0,"",(String)null,(String)null);
} }
//Update refresh token //Update refresh token
@ -1187,9 +1189,9 @@ public class MainController implements ServletContextAware {
String token_ar_sig = token.getBody().get("sig", String.class); //Она же но уже в токене обновления String token_ar_sig = token.getBody().get("sig", String.class); //Она же но уже в токене обновления
if(token_aa_sig==null || !token_aa_sig.equals(token_ar_sig)){ if(token_aa_sig==null || !token_aa_sig.equals(token_ar_sig)){
logout(response,request); //Удаляю куки чтобы эмулировать выход из приложения logout(response,request); //Удаляю куки чтобы эмулировать выход из приложения
return createStrJSONError(10000,trt.trt("Attempt_to_substitution_tokens"),null); return createStrJSONError(10000,trt.trt("Attempt_to_substitution_tokens"),(String)null,(String)null);
} }
+++++++++
//TODO проверить не заблокирован ли пользователь //TODO проверить не заблокирован ли пользователь
//if(json.has("block")) { //if(json.has("block")) {
// if(json.getBoolean("block")) // if(json.getBoolean("block"))
@ -1235,7 +1237,7 @@ public class MainController implements ServletContextAware {
} catch (Exception e) { } catch (Exception e) {
String uuid = UUID.randomUUID().toString(); String uuid = UUID.randomUUID().toString();
logger.error(uuid,e); logger.error(uuid,e);
json = createJSONError(10000,trt.trt("Internal_Server_Error")+" "+e.getMessage(), uuid); json = createJSONError(10000,trt.trt("Internal_Server_Error"), (String)null, uuid);
} finally { } finally {
} }
@ -1301,7 +1303,7 @@ public class MainController implements ServletContextAware {
Translation trt = new Translation(language_id,jdbcTemplate); Translation trt = new Translation(language_id,jdbcTemplate);
String result=createStrJSONError(10000,trt.trt("Request_not_processed"),null); String result=createStrJSONError(10000,trt.trt("Request_not_processed"), (String)null, (String)null);
//Connection conn = getConnection(); //Connection conn = getConnection();
int index = restore.getToken().indexOf("."); int index = restore.getToken().indexOf(".");
@ -1314,7 +1316,7 @@ public class MainController implements ServletContextAware {
String signature2 = Tools.generateSignature(captchaKey,payload); String signature2 = Tools.generateSignature(captchaKey,payload);
if(! signature1.equals(signature2)) if(! signature1.equals(signature2))
{ {
result=createStrJSONError(10000,trt.trt("The_signature_did_not_match"),null); result=createStrJSONError(10000,trt.trt("The_signature_did_not_match"), (String)null, (String)null);
} }
System.out.println("signature2: " + signature2); System.out.println("signature2: " + signature2);
@ -1323,16 +1325,16 @@ public class MainController implements ServletContextAware {
JSONObject token = new JSONObject(Tools.decryptText(captchaKey,payload)); JSONObject token = new JSONObject(Tools.decryptText(captchaKey,payload));
if(token==null) if(token==null)
return createStrJSONError(10000,trt.trt("Please_send_a_valid_JSON_string_in_your_token"),null); return createStrJSONError(10000,trt.trt("Please_send_a_valid_JSON_string_in_your_token"), (String)null,(String)null);
if(!restore.getCode().equals(token.getString("code"))){ if(!restore.getCode().equals(token.getString("code"))){
return createStrJSONError(10000,trt.trt("The_code_did_not_match"),null); return createStrJSONError(10000,trt.trt("The_code_did_not_match"),(String)null,(String)null);
} }
if(token.getLong("exp")<Instant.now().getEpochSecond()){ if(token.getLong("exp")<Instant.now().getEpochSecond()){
return createStrJSONError(10000,trt.trt("Captcha_is_outdated"),null); return createStrJSONError(10000,trt.trt("Captcha_is_outdated"),(String)null,(String)null);
} }
if (!Tools.isValidEmail(token.getString("email"))) { if (!Tools.isValidEmail(token.getString("email"))) {
return createStrJSONError(10000,trt.trt("The_email_field_is_incorrect"),null); return createStrJSONError(10000,trt.trt("The_email_field_is_incorrect"),(String)null,(String)null);
} }
//Проверяю есть ли в базе пользователь если есть отправляю ему почту для востановления //Проверяю есть ли в базе пользователь если есть отправляю ему почту для востановления
@ -1345,7 +1347,7 @@ public class MainController implements ServletContextAware {
id = (new JSONObject(ret.get(i))).getLong("id"); id = (new JSONObject(ret.get(i))).getLong("id");
} }
if(id==0) if(id==0)
return createStrJSONError(10000, trt.trt("User_with_this_email_was_not_found"),null); return createStrJSONError(10000, trt.trt("User_with_this_email_was_not_found"),(String)null,(String)null);
String password_new = Tools.generatePassword(6); String password_new = Tools.generatePassword(6);
@ -1370,7 +1372,7 @@ public class MainController implements ServletContextAware {
try { try {
token_new = URLEncoder.encode(token_new, StandardCharsets.UTF_8.toString()); token_new = URLEncoder.encode(token_new, StandardCharsets.UTF_8.toString());
} catch (UnsupportedEncodingException e) { } catch (UnsupportedEncodingException e) {
return createStrJSONError(10000, trt.trt("Internal_Server_Error"),null); return createStrJSONError(10000, trt.trt("Internal_Server_Error"), (String)null, (String)null);
} }
//Формирую ссылку для отправки на почту для сброса пароля //Формирую ссылку для отправки на почту для сброса пароля
@ -1386,7 +1388,7 @@ public class MainController implements ServletContextAware {
logger.error(uuid, ex); logger.error(uuid, ex);
return createStrJSONError(10000,trt.trt("Failed_send_mail_to_s"), token.getString("email"),uuid); return createStrJSONError(10000,trt.trt("Failed_send_mail_to_s"), token.getString("email"),uuid);
} }
return createStrJSONError(0, trt.trt("A_recovery_link_has_been_sent_to_your_email"),(String)null); return createStrJSONError(0, trt.trt("A_recovery_link_has_been_sent_to_your_email"),(String)null,(String)null);
} }
@RequestMapping(value = "/update",method = {RequestMethod.POST,RequestMethod.GET},produces = "application/json;charset=utf-8") @RequestMapping(value = "/update",method = {RequestMethod.POST,RequestMethod.GET},produces = "application/json;charset=utf-8")
@ -1501,7 +1503,7 @@ public class MainController implements ServletContextAware {
if(jwt_a.equals("") || countOccurrences(jwt_a, '.')!=2) if(jwt_a.equals("") || countOccurrences(jwt_a, '.')!=2)
{ {
return createStrJSONError(10000,trt.trt("Please_send_a_valid_JWT_token"),null); return createStrJSONError(10000,trt.trt("Please_send_a_valid_JWT_token"),(String)null,(String)null);
} }
//Connection conn = getConnection(); //Connection conn = getConnection();
//Checking the token signature //Checking the token signature
@ -1513,7 +1515,7 @@ public class MainController implements ServletContextAware {
.build() .build()
.parseClaimsJws(jwt_a); .parseClaimsJws(jwt_a);
} catch (Exception e) { } catch (Exception e) {
return createStrJSONError(10000, trt.trt("JWT_token_verification_error"),null); return createStrJSONError(10000, trt.trt("JWT_token_verification_error"),(String)null,(String)null);
} }
//If this is a repeat authorization, then we inform the client about it //If this is a repeat authorization, then we inform the client about it
String result=null; String result=null;
@ -1522,9 +1524,9 @@ public class MainController implements ServletContextAware {
String data = cache.get(claims.getSignature()); String data = cache.get(claims.getSignature());
if (data != null) { if (data != null) {
if (data.equals("repeat")) if (data.equals("repeat"))
result = createStrJSONError(10000, trt.trt("Reauthorization_detected_if_it_is_not_you_please_change_your_password"),null); result = createStrJSONError(10000, trt.trt("Reauthorization_detected_if_it_is_not_you_please_change_your_password"),(String)null,(String)null);
else else
result = createStrJSONError(10000, trt.trt("Your_authorization_token_is_not_valid"),null); result = createStrJSONError(10000, trt.trt("Your_authorization_token_is_not_valid"),(String)null,(String)null);
} }
} catch (Exception e) { } catch (Exception e) {
logger.error("An error occurred", e); logger.error("An error occurred", e);
@ -1535,6 +1537,6 @@ public class MainController implements ServletContextAware {
logout(response,request); logout(response,request);
return result; return result;
} }
return createStrJSONError(0,"",null); return createStrJSONError(0,"",(String)null,(String)null);
} }
} }