Spring Integration Control Bus message to change selector of a JMS Inbound Channel Adapter -


i'm implementing flow on spring integration-based (ver. 3.0.1.release) application requires store messages on jms queue picked later. that, i've been trying use spring integration jms inbound channel adapter custom selector, , picking message queue changing jms selector of jmsdestinationpollingsource matching id included header property.

one of requirements cannot add new service or java method, i've been trying sort out using control bus, keep receiving same error when send message set messageselector different.

inbound channel adapter definition:

<int-jms:inbound-channel-adapter id="inboundadapter"                                  channel="inboundchannel"                                  destinationname="bufferqueue"                                  connection-factory="connectionfactory"                                  selector="matchingid = 'no value'">     <int:poller fixed-delay="1000"/> </int-jms:inbound-channel-adapter> 

message:

@'inboundadapter.source'.setmessageselector("matchingid = 'value'") 

error:

evaluationexception: method 'public void org.springframework.integration.jms.jmsdestinationpollingsource.setmessageselector(java.lang.string)' not supported command processor. if usign control bus, consider adding @managedoperation or @managedattribute. 

which, afaik, means jmsdestinationpollingsource class not control bus manageable, it's not passing controlbusmethodfilter.

is approach nonviable, or there i'm missing? there way set selector dynamically using si xml configuration files only?

first of strange use java tool , don't allow write code on java...

but choice, or said requirements.

change employer! ;-)

that's correct: control bus allows @managedoperation , @managedattribute method. since jmsdestinationpollingsource.setmessageselector. can make that. make sense if can reach bit different approach?

<int:outbound-channel-adapter id="changeselectorchannel"      ref"inboundadapter.source method="setmessageselector"/> 

where new selector expression should payload of message channel.


Comments

Popular posts from this blog

unity3d - Rotate an object to face an opposite direction -

angular - Is it possible to get native element for formControl? -

javascript - Why jQuery Select box change event is now working? -