Форум программистов, компьютерный форум CyberForum.ru

Java EE (J2EE)

Войти
Регистрация
Восстановить пароль
 
Fene4ka_
87 / 87 / 16
Регистрация: 24.01.2014
Сообщений: 1,196
#1

Spring WebSockets + StompClient - Java EE

18.12.2016, 04:06. Просмотров 191. Ответов 0
Метки нет (Все метки)

1. Конфигурация

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@Configuration
@EnableWebSocketMessageBroker
public class WebSocketConfig extends AbstractWebSocketMessageBrokerConfigurer {
    @Override
    public void configureMessageBroker(MessageBrokerRegistry config) {
        config.enableSimpleBroker("/updateRoom","/connectToRoom", "/disconnectFromRoom", "/createRoom", "/listOfRoom", "/sendQuestion");
        config.setApplicationDestinationPrefixes("/app");
    }
 
    @Override
    public void registerStompEndpoints(StompEndpointRegistry registry) {
        registry.addEndpoint("/game").withSockJS();
        registry.addEndpoint("/gameRoom").withSockJS();
    }
}
Не могу понять назначение префикса app.


2.Контроллер

Java
1
2
3
4
5
6
7
    @RequestMapping(value = "/createGameRoom", method = RequestMethod.POST, consumes = "application/json", produces = "application/json")
    @MessageMapping("/gameRoom")
    @SendTo(value = {"/listOfRoom"})
    public @ResponseBody List<GameRoom> createGameRoom(@RequestBody GameRoom gameRoom) throws DaoException {
        gameRoomService.add(gameRoom);
        return gameRoomService.getAll();
    }
На такой метод в контроллере я могу отправить ajax post query и запрос с помощью stomp, типа:
Javascript
1
stompClient.send("/app/gameRoom", {}, JSON.stringify(object))
В случае stomp запроса придет ответ всем клиентам подписанным на "/listOfRoom". В случае с ajax ответ клиентам не придет, можно ли как-то сделать, чтобы и в случае ajax ответ клиентам приходит ?)

3.Перегрузка

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
    @MessageMapping({"/gameRoom", "/gameRoom2"})
    @SendTo(value = {"/listOfRoom"})
    public @ResponseBody List<GameRoom> createGameRoom(@RequestBody GameRoom gameRoom) throws DaoException {
        gameRoomService.add(gameRoom);
        return gameRoomService.getAll();
    }
 
    @MessageMapping({"/gameRoom3"})
    @SendTo(value = {"/listOfRoom"})
    public @ResponseBody List<GameRoom> createGameRoom2(@RequestBody GameRoom gameRoom) throws DaoException {
        gameRoomService.add(gameRoom);
        return gameRoomService.getAll();
    }
Я открыл 3 разных вкладки, отправил сообщения, получил ответ, который вызывал один и тот же js метод, в котором был alert + отрисовка gui, но gui не отрисовалось, пока я во всех трех вкладках не нажал alert. С чем это связано



Просветите меня плз в этих вопросах)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.12.2016, 04:06     Spring WebSockets + StompClient
Посмотрите здесь:

Spring: а как вы разрешаете зависимости для spring ? Java EE
Spring-WS Java EE
Spring. Тесты и Spring-security Java EE
задания по spring core и spring mvc для новичков Java EE
About Spring Java EE
Spring Framework - запуск примеров Spring Java EE
About Spring Java EE
Spring IoC Java EE
Java EE Jetty embedded + Spring MVC + Spring Security
Spring MVC. 404 ошибка при включении Spring Data JPA в проект Java EE
Перевод проекта из Spring Maven в обычный Spring MVC Java EE
Spring Java EE

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 11:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru