1

Spring MQTT クライアントを介して、サブスクライブされたトピック メッセージを読み取ろうとしています。

<mqtt:message-driven-channel-adapter id="mqttInbound"
    client-id="mySpringServer"
    url="tcp://localhost:1883"
    topics="foo2015"
    auto-startup="true"
    client-factory="clientFactory"
    channel="fileChannel"/>

" " チャネルを持つよりも、fileChannelSpring MQTT クライアント経由でそれらを処理するのが好きです。元:MqttPahoMessageDrivenChannelAdapter

MqttPahoMessageDrivenChannelAdapterBean として使用して " mqttInbound" を参照できますか?

" " への着信メッセージはすべて にmqttInboundリダイレクトされMqttPahoMessageDrivenChannelAdapterます。これはできますか?

更新: 受信メッセージを Bean にリダイレクトできますか? 使用できるインターフェイスはありますか?

例えば:

<mqtt:message-driven-channel-adapter ... channel="msgChannel" />
<bean id="msgChannel" class="org.channel.AnyMessageReader"/>

以下の例を見たことがありますが、それが私が探しているものかどうかはわかりません。

<int:channel id="channel_01" />
<int:service-activator id="serviceActivator" input-channel="channel_01" ref="msgService" method="setMessage" />
<bean id="msgService" class="org.channel.AnyMessageService"/>
4

1 に答える 1

1

申し訳ありませんが、Spring Integration を少し誤解したか、質問から何かを逃しました。

<mqtt:message-driven-channel-adapter>、 の高レベル コンポーネントですMqttPahoMessageDrivenChannelAdapter

  1. MqttNamespaceHandler

    this.registerBeanDefinitionParser("message-driven-channel-adapter",  new MqttMessageDrivenChannelAdapterParser());
    
  2. MqttMessageDrivenChannelAdapterParser

            BeanDefinitionBuilder builder = BeanDefinitionBuilder
                    .genericBeanDefinition(MqttPahoMessageDrivenChannelAdapter.class);
    

では、にラップMqttPahoMessageDrivenChannelAdapterするポイントは何MqttPahoMessageDrivenChannelAdapterですか?

そのための拡張機能はありますか?<bean>そのため、カスタマイズのために正規を宣言する必要がありますが、いずれにしてもoutputChannelofMessageProducerは必須です。

于 2015-05-05T18:28:56.617 に答える