Hi folks,

Weird situation here... I am supposed to make a call to a SOAP service to 
indicate to another system that there is data that needs to be processed:

client = 
SoapClient(wsdl='http://some.internal.server:5555/ws/sriks.postgresql:cartonTest?WSDL')
result = client.recordCartons(tallyNumber=tallyrec.TallyNumber)

This times out.

TallyNumber is defined thusly:

Field <https://pedapps.gpo.gov/examples/global/vars/Field>('TallyNumber', 
'string', length=6, unique=True, label='Tally sheet number')


I can call the method with a literal value, and it does not time out:
result = client.recordCartons(tallyNumber='400009')

I can set a variable to a literal value, and it does not time out:
tn = '400009'
result = client.recordCartons(tallyNumber=tn) 

But this does time out:
tn = tallyrec.TallyNumber

So does this:
tn = '%s' % (tallyrec.TallyNumber)   # thought I'd create a new variable 
instead of using the reference

This also times out:
tn = str(tallyrec.TallyNumber)

I even tried:
tn = str(tallyrec.TallyNumber)
result = client.recordCartons(tallyNumber="%s" % (tn))

I am logging the values used in the call, and TallyNumber is always 
reported as a valid string. The values in the log messages that indicate 
success look exactly the same as the values in the log messages that 
indicate a failure.

How do I get TallyNumber into some kind of form that will not cause the 
call to timeout?

Any clues would be very much appreciated... Thanks!

Nick

-- 



Reply via email to