In a map, we had several field-maps from input to output. This included 2 conditional mappings, 2 transformer mapping and several direct mappings.
It was experienced that these values were not getting mapped correctly when several threads tries to access that service. Map was not mapping one or more values sometime. But most of the time it was correct. Also, if only one thread is used, it was always correct.
One map is now broken into 2 maps, one for direct mapping and one for conditional mapping, and two invoke steps, replacing transformers. Now, it is always correct, not skipping any value. I suspect that transformers are not synchronized in webMethods. Is my assumption correct? How call to a invoke step and call to a transformer is different in webMethods?
Working with Transformers section of Developer Guide suggests transformers as a series of Invoke steps embedded in a Map. So, does that mean there is no difference in a call to invoke step and call to a transformer? What is happening in background?
Thanks in advance.