2

我试图在客户端连接后将异步消息从服务器发送到客户端,而与用户操作无关。到目前为止,我发现的所有示例都在控制器中自动装配了 SimpMessagingTemplate。是否有一个文件包含有关此对象默认情况下如何自动装配的信息?我的目标是在一个不由 spring 管理的类中使用这个对象。我希望有一种直接的方式来构造对象,而不是尝试通过调试模式使用循环引用重新创建这个深层对象。

这是 servlet xml 的相关部分:

<websocket:message-broker application-destination-prefix="/socketprefix">
    <websocket:stomp-endpoint path="/stompendpoint">

        <websocket:sockjs/>
    </websocket:stomp-endpoint>
    <websocket:simple-broker prefix="/topics/,/queues/"/>

</websocket:message-broker> 
4

2 回答 2

1

该模板通常是自动装配的,因为为您创建了一个与您的配置相匹配的模板。按照设计,它与您的 Simp 基础架构的其他部分相结合(而且必须如此!),因为要构建一个,您需要:

  • 用户目标前缀(如果您配置了自定义前缀)
  • 更重要的是,一个MessageChannel将消息发送到您的消息代理

也许你能详细说明为什么这个类不能由 Spring 管理?

请参阅SimpMessagingTemplate javadoc

于 2014-06-18T16:21:19.457 回答
0

我无法评论,这是我唯一可以写的部分:

“也许你能详细说明为什么这个类不能由 Spring 管理?

请参阅 SimpMessagingTemplate javadoc。”

对我来说是因为当我使用 @Autowired 时,属性值设置为 null。

于 2022-03-02T10:35:54.670 回答