ExecutOrsubscribeChannelを使う方法
-
21-12-2019 - |
質問
質問 AutoWire SimpMessagingTemplate
クラスExecutOrsubscribeChannelに問題があります。サーバーにブラウザに非同期メッセージを送信したいです。適切にExecutOrsBubscribeChannel を使うことができますか?
例:
public class GreetingController {
@Autowired
private SimpMessagingTemplate template;
public void setTemplate(SimpMessagingTemplate template) {
this.template = template;
}
@MessageMapping("/hello")
@SendTo("/topic/greetings")
public Greeting greeting(HelloMessage message) throws Exception {
Thread.sleep(5000); // simulated delay
this.template.convertAndSend("/topic/greetings", "Hello World");
return new Greeting("Hello, " + message.getName() + "!");
}
}
.
しかし私が行を送っている「Hello World」のテキスト
this.template.convertAndSend("/topic/greetings", "Hello World");
.
ブラウザが受信していません。他のすべてがうまく機能します。
Beans設定は次のとおりです。
<bean id="executorSC" class="org.springframework.messaging.support.ExecutorSubscribableChannel"/>
<bean id="template" class="org.springframework.messaging.simp.SimpMessagingTemplate">
<constructor-arg index="0" ref="executorSC"/>
</bean>
.
事前にありがとうございました。
解決
この質問は、Intellijのアイデアのバグのために書かれました。応答はが自動反対になることができませんでした。SimpMessagingTemplateタイプが見つかりませんでした
a a a a a a a a a a a a a a a tidea-123964">この問題を解決するためにJetBrainsで作成されています。
他のヒント
この設定を使用してみてください
<websocket:message-broker
application-destination-prefix="/app">
<websocket:stomp-endpoint path="/ws">
<websocket:sockjs />
</websocket:stomp-endpoint>
<websocket:simple-broker prefix="/topic/greetings" />
</websocket:message-broker>
.
の代わりにp>
<bean id="executorSC" class="org.springframework.messaging.support.ExecutorSubscribableChannel"/>
.
所属していません StackOverflow