Hi,

I'm very confused with the CorrelationID which is generated by the
jms-transport.

The configuration piece as follows:
<service name="HelloWorldServiceRuntimeCorrelationIDStaticPrefix">
<port binding="tns:HelloWorldPortBinding"
name="HelloWorldPortRuntimeCorrelationIDStaticPrefixEng">
<jms:clientConfig conduitSelectorPrefix="com.mycompany.eng:"
useConduitIdSelector="true"/>
<jms:server messageSelector="JMSCorrelationID LIKE 'com.mycompany.eng:%'"/>
<jms:address
...
</jms:address>
</port>
</service>

I think the rules generating the CorrelationID should be as follows:

userCID -> userCID
userCID + conduitSelectorPrefix -> userCID
userCID + conduitSelectorPrefix + useConduitIdSelector(true) -> userCID
userCID + conduitSelectorPrefix + useConduitIdSelector(false) -> userCID

conduitSelectorPrefix + useConduitIdSelector(true) ->
conduitSelectorPrefix + conduitId + index
conduitSelectorPrefix + useConduitIdSelector(false) ->
conduitSelectorPrefix + index

useConduitIdSelector(true) -> conduitId + index
useConduitIdSelector(false) -> the request message's messageID

->'s left side is the condition.
->'s right side is rule for generation of CorrelationID.
userCID means that the client gives a CorrelationID.
conduitSelectorPrefix means that the client configures in the wsdl.
useConduitIdSelector means that the client configures in the wsdl.
conduitId means that the string generated by the jms-tranport's JMSConduit.
index is a autoincreasing number which indicates the uniqueness of the
CorrelationID.


Is it right?
I want to use this rules for the generation of CorrelationID.

best regards

Reply via email to