Question

liée à la question AutoWire SimpMessagingTemplate

J'ai un problème de la classe exécutéSubscurscribablechannel.Je souhaite que le serveur envoie un message asynchrone au navigateur. Comment puis-je utiliser correctement exécutorsubscribablechannel ?

Exemple:

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() + "!");
    }
}

mais le texte "Hello World" que j'envoie dans la ligne

this.template.convertAndSend("/topic/greetings", "Hello World");

n'est pas reçu par le navigateur.Tout le reste fonctionne bien.

La configuration des haricots est la suivante:

<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>

Merci d'avance.

Était-ce utile?

La solution

Cette question a été écrite en raison d'un bogue dans Intellij Idea.La réponse est dans Impossible d'AUTOWIRE.Aucun haricot de type SimPMesSagagageTemplate de type trouvé

a billet a été créé dans Jetbrains pour résoudre ce problème.

Autres conseils

Essayez d'utiliser cette configuration

<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>

au lieu de

<bean id="executorSC" class="org.springframework.messaging.support.ExecutorSubscribableChannel"/>

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top