Had to deal with the same issue.

I just edited the WSDL file and added the soapAction value to each method,

Took a few minutes, but that's all i had to do. Try to avoid using code where code isn't necessary.

In case that in the future something will change, you will have to deal with it on a code level, possible, but it's easier to just reconfig the new WSDL file or request the full version from SF\the integrator you're working with, without trying to figure out what that piece of code is meant to do after 2 years, and then poking around with it.

Good luck

Okay, 

is the fact that the trace is on "context.MainObj" makes any difference?

i can't seem to grasp if after each response, i validate that i have an object returned, and i insert that object into the same context, how could it be that i get two different OREF's.

thought it might be something to do with how the ASSIGN action works, so i switched to a code block, in which:

set context.tempZenObj = tmpObj (the returned object from JsonToObject)

do context.MainObj.IssuesList.Insert(context.MainObj)

same result.

Hi Robert,

Thank's for the reply.

However, i do check to see if i get an object returned from JsonToObject, and i do insert it into a context that serves as a holder for the list.

i have a Class named MainObj which has a property of a list.

"Property IssuesList As list of %ZEN.ProxyObject"

and a context named MainObj of type MainObj.

do you have any explanation on why i have 2 instances of my context.MainObj?

Here's two screenshots of the trace which shows that it generates two instances.