says
request = Request(suds_method.client.location(), request_text)
well the suds method (Which would be c.service.*something)* doesn't have a
location attribute under client.
instead it is under method, so it should be
request = Request(suds_method.method.location, request_text)
On Tue, Jun 11, 2013 at 5:47 PM, Matthew Ashton
<matthew.ashton3(a)gmail.com>wrote:
No... see the documentation. I just wanted to make sure the client
objects
was set up... so something like
from suds.client import Client
url="./abc?wsdl"
self.client = Client(url=url)
works.
*location* This overrides the service port address *URL* defined in the
WSDL.
The service port address defined in the WSDL should look like (here is
from fedex's testing wsdl)
<service name="ShipService">
<port name="ShipServicePort"
binding="ns:ShipServiceSoapBinding">
<s1:address location="https://wsbeta.fedex.com:443/web-services/ship
"/>
</port>
</service>
and I know why it's failing.. it's because there's no .location() under a
client (line 75)... and I'm trying to find where you can access it
On Tue, Jun 11, 2013 at 1:01 PM, Surya Kasturi <kasturisurya(a)gmail.com>wrote:
>
>
>
> On Tue, Jun 11, 2013 at 7:42 PM, Matthew Ashton <
> matthew.ashton3(a)gmail.com> wrote:
>
>> location is a keyword argument attribute you can specify at the creation
>> of the client object used to make the service calls, or change later
>> through a method call setlocation (
>>
http://jortel.fedorapeople.org/suds/doc/suds.wsdl.Service-class.html )
>>
>> According to the suds documentation (
>>
https://fedorahosted.org/suds/wiki/Documentation )
>> *location* This overrides the service port address *URL* defined in the
>> WSDL. So I was just making sure you set up the client object properly
>>
>>
>> On Tue, Jun 11, 2013 at 12:25 PM, Surya Kasturi
<kasturisurya(a)gmail.com>wrote:
>>
>>>
>>>
>>>
>>> On Tue, Jun 11, 2013 at 7:21 PM, Matthew Ashton <
>>> matthew.ashton3(a)gmail.com> wrote:
>>>
>>>> But the question was what did you do to fix the 'location'
issue?
>>>>
>>>>
>>>> On Tue, Jun 11, 2013 at 12:12 PM, Surya Kasturi <
>>>> kasturisurya(a)gmail.com> wrote:
>>>>
>>>>> Thanks...
>>>>> We have used a similar method to send data as string and its
working!
>>>>> But the string is of size 250kb and we don't want that large data
to be
>>>>> sent as a single string
>>>>>
>>>>>
>>>>> On Tue, Jun 11, 2013 at 5:27 PM, Matthew Ashton <
>>>>> matthew.ashton3(a)gmail.com> wrote:
>>>>>
>>>>>> I'm assuming you've properly set up the client to make
the web
>>>>>> service call? I'll look into the ticket you linked.
>>>>>>
>>>>>> On Tue, Jun 11, 2013 at 7:43 AM, Surya Kasturi <
>>>>>> kasturisurya(a)gmail.com> wrote:
>>>>>>
>>>>>>> I am using with_soap_attachment() mentioned at
>>>>>>>
https://fedorahosted.org/suds/ticket/350
>>>>>>>
>>>>>>> def sendFile(self, vehicleId, filePath):
>>>>>>> uploadFileMethod = self.client.service.uploadFile
>>>>>>> attachment_id = hashlib.sha256(filePath).hexdigest()
>>>>>>> attachment_content = (filePath, attachment_id)
>>>>>>> with_soap_attachment(uploadGpxFileMethod,
>>>>>>> attachment_content)
>>>>>>>
>>>>>>> this what my method is..
>>>>>>>
>>>>>>> Now, I am getting the error
>>>>>>>
>>>>>>> AttributeError: 'Client' object has no attribute
'location'
>>>>>>> Error: tcpip::Socket::recvAndCheck @ recv: peer shutdown
>>>>>>>
>>>>>>> SoapAttachment.py", line 75, in with_soap_attachment
>>>>>>>
>>>>>>> So, how to fix it?? I need to attach file and send it..As
this
>>>>>>> interface needs to be done asap it would be nice if someone
can let me know
>>>>>>> what is the issue here
>>>>>>>
>>>>>>> thanks
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> suds mailing list
>>>>>>> suds(a)lists.fedoraproject.org
>>>>>>>
https://admin.fedoraproject.org/mailman/listinfo/suds
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>> the location attribute line was something like
>>>
>>> suds_method.client.location() which is supposed to work and since the
>>> attr is not present, its raising.
>>>
>>> So, I manually edited that argument and replaced with the server wsdl
>>> url
>>> ( I am quite new in the team and new to soap.. I hope its right!!
>>> putting wsdl url)
>>>
>>> but, after that its raising error. "internal server fault" or
>>> something.. I am away from the codebase now and thus can't give you
>>> appropriate details :(
>>>
>>
>>
> Okay, as far as I remember (I don't have code base right now)
>
> the Client instance is created like this
>
> url = "localhost://...//abc?wsdl"
> self.client = Client(url)
>
> and you are saying that we can do something like
>
> self.client = Client(location = url)
>
>
>
>