&nbsp;<br><br><div><span class="gmail_quote">On 11/1/06, <b class="gmail_sendername">Danny Yoo</b> &lt;<a href="mailto:dyoo@hkn.eecs.berkeley.edu">dyoo@hkn.eecs.berkeley.edu</a>&gt; wrote:</span><blockquote class="gmail_quote" style="margin-top: 0; margin-right: 0; margin-bottom: 0; margin-left: 0; margin-left: 0.80ex; border-left-color: #cccccc; border-left-width: 1px; border-left-style: solid; padding-left: 1ex">
&gt; here is the stack<br>&gt; trace. i know that SOAPpy is doing wrong by not checking the type of<br>&gt; the element along with id(ele).<br>&gt; I thought if there is any work around the problem i could use that without
<br>&gt; upgrading SOAPpy after it is fixed.<br><br>Hi Premnath,<br><br>You might want to see if some other SOAP module might be better supported.<br>The last version of SOAPpy that I've seen appears to have been released in
<br>2005, and as far as I can tell, the project is languishing a bit.&nbsp;&nbsp;Most of<br>the energy toward Python and SOAP seems to be focused on the Zolera SOAP<br>Infrastructure (ZSI) project, which can be found at:<br><br>&nbsp;&nbsp;&nbsp;&nbsp; 
<a href="http://pywebsvcs.sourceforge.net/">http://pywebsvcs.sourceforge.net/</a><br><br><br>Thanks again for the stack trace; it helps pinpoint some problems.&nbsp;&nbsp;I did<br>some quick checks on the stack trace; the line numbers from the stack
<br>trace aren't matching up with SOAPpy 0.12.0., so I'm not sure if this<br>problem has already been fixed or not.&nbsp;&nbsp;You may want to make sure you have<br>the latest release of SOAPpy if you continue using that module.<br>
<br><br>The code for SOAPBuilder.dump_string() just doesn't look right to me.<br>Why does one have to do a checkref() on it when serializing the string<br>data, given that a string has no internal structure to speak of?&nbsp;&nbsp;I think
<br>the code there is just wrong.&nbsp;&nbsp;You're seeing this failure simply because<br>you're passing in two strings with the same id, which should be perfectly<br>legal and fine.&nbsp;&nbsp;SOAPpy is definitely at fault here.<br><br>I kludged up the recursive-checking code on strings (
i.e. turned it off),<br>and now see the following:<br><br>##########################################################################<br>&gt;&gt;&gt; import SOAPpy<br>&gt;&gt;&gt; rmt = SOAPpy.SOAPProxy(&quot;<a href="http://soap.test.com">
http://soap.test.com</a>&quot;,<br>...&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;header = SOAPpy.Types.headerType(<br>...&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;data = {'username': 'prem',<br>...&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'password': 'prem'}))
<br>&gt;&gt;&gt; rmt.testcall()<br>Traceback (most recent call last):<br>&nbsp;&nbsp; File &quot;&lt;stdin&gt;&quot;, line 1, in ?<br>&nbsp;&nbsp; File &quot;SOAPpy/Client.py&quot;, line 470, in __call__<br>&nbsp;&nbsp;&nbsp;&nbsp; return self.__r_call(*args, **kw)
<br>&nbsp;&nbsp; File &quot;SOAPpy/Client.py&quot;, line 492, in __r_call<br>&nbsp;&nbsp;&nbsp;&nbsp; self.__hd, self.__ma)<br>&nbsp;&nbsp; File &quot;SOAPpy/Client.py&quot;, line 363, in __call<br>&nbsp;&nbsp;&nbsp;&nbsp; config = self.config)<br>&nbsp;&nbsp; File &quot;SOAPpy/Client.py&quot;, line 263, in call
<br>&nbsp;&nbsp;&nbsp;&nbsp; raise HTTPError(code, msg)<br>SOAPpy.Errors.HTTPError: &lt;HTTPError 405 Method not allowed&gt;<br>##########################################################################<br><br>which looks a little more promising.
<br><br><br>In fact, you can see this yourself by playing a small trick:<br><br>#######################################################################<br>&gt;&gt;&gt; rmt = SOAPpy.SOAPProxy(&quot;<a href="http://soap.test.com">
http://soap.test.com</a>&quot;, header =<br>SOAPpy.Types.headerType(data={'username': 'p' + 'rem', 'password': 'p' +<br>'rem'}))<br>&gt;&gt;&gt; rmt.testcall()<br>Traceback (most recent call last):<br>&nbsp;&nbsp; File &quot;&lt;stdin&gt;&quot;, line 1, in ?
<br>&nbsp;&nbsp; File &quot;SOAPpy/Client.py&quot;, line 470, in __call__<br>&nbsp;&nbsp;&nbsp;&nbsp; return self.__r_call(*args, **kw)<br>&nbsp;&nbsp; File &quot;SOAPpy/Client.py&quot;, line 492, in __r_call<br>&nbsp;&nbsp;&nbsp;&nbsp; self.__hd, self.__ma)<br>&nbsp;&nbsp; File &quot;SOAPpy/Client.py&quot;, line 363, in __call
<br>&nbsp;&nbsp;&nbsp;&nbsp; config = self.config)<br>&nbsp;&nbsp; File &quot;SOAPpy/Client.py&quot;, line 263, in call<br>&nbsp;&nbsp;&nbsp;&nbsp; raise HTTPError(code, msg)<br>SOAPpy.Errors.HTTPError: &lt;HTTPError 405 Method not allowed&gt;<br>#######################################################################
<br><br>Forcing the manual string concatenation lets you go on, but this is just a<br>silly kludge around what is fundamentally a bad SOAPYpy bug.<br><br><br>My current recommendation is to try using ZSI instead: the SOAPpy code
<br>base appears to have a bit of bit rot.<br><br><br>Good luck to you!<br></blockquote></div><br>Thanks for your reply. I will definitely&nbsp;look&nbsp;into&nbsp;ZSI <br clear="all"><br>-- <br>With Regards,<br>Premnath Sah T. H.<br><br>