I am using a Spring Backend with a Angular+Ionic frontend. I have created a WebSocket to trigger my frontend when a Teacher modifies a Grade in Moodle. This is irrelevant, just to give you some context. So the problem is that mi fronted is correctly subscribed: constructor(private apiUserService: ApiUserService) { this.webSocket = new WebSocket('ws://localhost:8080/newGrade'); this.webSocket.onmessage = (event) => { console.log(event.data) }} And it gets the first message correctly. The problem is that when I update my DB and calls the Handler to be triggered it doesn't respond. I know that the method and my plugin in Moodle is working because the DB is UPDATED: @Autowired private NewGradeHandler newGradeHandler; private final ObjectMapper objectMapper = new ObjectMapper(); @PostMapping("/updateGrade") public ResponseEntity<String> miEndpoint(@RequestBody Map<String, Object> datos) throws Exception { try { // Obtener los datos de la solicitud Long userId = Long.parseLong(datos.get("userid").toString()); if (userId != -1) { Long courseId = Long.parseLong(datos.get("courseid").toString()); int mark = Integer.parseInt(datos.get("grade").toString()); String assignmentName = datos.get("assignmentname").toString(); // Buscar el usuario y la asignatura User student = userService.findById(userId); Subject subject = subjectService.getSubject(courseId); // Crear una nueva nota o actualizarla si existe if (!subjectMarkService.existsByStudentIdAndSubjectIdAndNameMark(student, subject, assignmentName)) { Subject_Mark newMark = new Subject_Mark(student, subject, mark, "Ordinaria", assignmentName); subjectMarkService.save(newMark); Subject_Mark updatedGrade = subjectMarkService.getLastSubjectMarkAdded(); sendMessageToWebSocket(updatedGrade); } else { updateExistingMark(student, subject, mark, assignmentName); } return ResponseEntity.ok("Nota creada/actualizada correctamente"); } return ResponseEntity.ok("ok"); } catch (NumberFormatException e) { return ResponseEntity.badRequest().body("Error al convertir los datos"); } catch (RuntimeException e) { return ResponseEntity.badRequest().body(e.getMessage()); } } private void updateExistingMark(User student, Subject subject, int mark, String assignmentName) throws Exception { Subject_Mark existingMark = subjectMarkService.findByStudentIdAndSubjectIdAndNameMark(student, subject, assignmentName).get(); existingMark.setMark(mark); subjectMarkService.save(existingMark); } private void sendMessageToWebSocket(Subject_Mark grade) throws Exception { TextMessage message = new TextMessage(objectMapper.writeValueAsString(grade)); for (WebSocketSession session : newGradeHandler.getSessions()) { session.sendMessage(message); } } My handler and its config is: @Configuration@EnableWebSocketpublic class WebSocketConfig implements WebSocketConfigurer { @Override public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) { registry.addHandler(new NewGradeHandler(), "/newGrade").setAllowedOrigins("*"); } @Bean public WebSocketHandler NewGradeHandler() { return new NewGradeHandler(); }} And this is my Handler: @Componentpublic class NewGradeHandler extends TextWebSocketHandler { private final ObjectMapper objectMapper = new ObjectMapper(); private final List<WebSocketSession> sessions = new CopyOnWriteArrayList<>(); @Autowired private SubjectMarkService subjectMarkService; @Override public void afterConnectionEstablished(WebSocketSession session) throws Exception { Subject_Mark newGrade = subjectMarkService.getLastSubjectMarkAdded(); TextMessage message = new TextMessage(objectMapper.writeValueAsString(newGrade)); session.sendMessage(message); sessions.add(session); } public List<WebSocketSession> getSessions() { return sessions; }} I have searched some guides but the update the wbesocket from inside the class which I know it works: https://medium.com/@parthiban.rajal...ts-using-spring-boot-and-angular-b11e7363f051 I would appreciate some help. Continue reading...