Would you please provide the source for mysite.BDSCheckUser.views? _Nik
On 7/5/2012 11:37 AM, Jeff Silverman wrote: > Resulting output, > > Help on function DjangoSoapApp in module mysite.BDSCheckUser.views: > > DjangoSoapApp(*args, **kwargs) > > > On Jul 5, 2:31 pm, Nikolas Stevenson-Molnar <nik.mol...@consbio.org> > wrote: >> Hmmm, I can't think of what may be happening. One more debug thing to >> try, print the help of DjangoSoapApp just before the problem line: >> >> print help(DjangoSoapApp) >> >> That way, if the DjangoSoapApp symbol is getting reassigned to a >> function somewhere along the way, that might clue you in. >> >> _Nik >> >> On 7/5/2012 11:17 AM, Jeff Silverman wrote: >> >> >> >>> I've been flip flopping my views.py between that snippet, and >>> https://gist.github.com/935809, which is a bit different, but easier >>> to follow. >>> On Jul 5, 2:03 pm, Nikolas Stevenson-Molnar <nik.mol...@consbio.org> >>> wrote: >>>> Is your code still the same as you posted >>>> earlier:http://djangosnippets.org/snippets/2638/?Andthe error is occuring >>>> on >>>> ln 28? >>>> _Nik >>>> On 7/5/2012 11:01 AM, Jeff Silverman wrote: >>>>> The print output is: >>>>> <type 'function'> >>>>> On Jul 5, 1:38 pm, Nikolas Stevenson-Molnar <nik.mol...@consbio.org> >>>>> wrote: >>>>>> Hmmm, not sure about this one. Try printing out the type of >>>>>> DjangoSoapApp before that line is called: >>>>>> print type(DjangoSoapApp) >>>>>> _Nik >>>>>> On 7/5/2012 5:20 AM, Jeff Silverman wrote: >>>>>>> Ok, I'm further along, I think. Now I'm getting the following >>>>>>> response = super(DjangoSoapApp, self).__call__(environ, >>>>>>> start_response) >>>>>>> (Pdb) p start_response >>>>>>> <function start_response at 0x25d1ed8> >>>>>>> (Pdb) super(DjangoSoapApp, self).__call__(environ, start_response) >>>>>>> *** TypeError: super() argument 1 must be type, not function >>>>>>> On Jul 3, 3:47 pm, Nikolas Stevenson-Molnar <nik.mol...@consbio.org> >>>>>>> wrote: >>>>>>>> Looking at the soaplib source, it looks like it required requests to be >>>>>>>> made using POST. If you're loading this in a web browser to test, then >>>>>>>> you're making a GET request. Try making a POST request (using something >>>>>>>> like Fiddler) instead. >>>>>>>> https://github.com/soaplib/soaplib/blob/master/src/soaplib/core/serve... >>>>>>>> (line 84/85) >>>>>>>> _Nik >>>>>>>> On 7/3/2012 12:20 PM, Jeff Silverman wrote: >>>>>>>>> http://djangosnippets.org/snippets/2638/ >>>>>>>>> On Jul 3, 2:56 pm, Nikolas Stevenson-Molnar <nik.mol...@consbio.org> >>>>>>>>> wrote: >>>>>>>>>> Would you please provide a reference to the snippet or to your >>>>>>>>>> complete >>>>>>>>>> code? It's hard to understand what's going on from this small bit. >>>>>>>>>> _Nik >>>>>>>>>> On 7/3/2012 11:33 AM, Jeff Silverman wrote: >>>>>>>>>>> Thanks for the reply. Removing that did not change the result. >>>>>>>>>>> Just >>>>>>>>>>> an FYI, but I copied the code verbatim from the snippet. that's >>>>>>>>>>> why I >>>>>>>>>>> cannot understand what's going on. I continually get the405method >>>>>>>>>>> not allowed error regardless. >>>>>>>>>>> On Jul 3, 1:28 pm, Nikolas Stevenson-Molnar <nik.mol...@consbio.org> >>>>>>>>>>> wrote: >>>>>>>>>>>> I'm not sure that this is the problem, but typically constructors >>>>>>>>>>>> should >>>>>>>>>>>> not have a return value. Try removing the "return" from your >>>>>>>>>>>> DjangoSoapApp constructor. >>>>>>>>>>>> _Nik >>>>>>>>>>>> On 7/3/2012 6:32 AM, Jeff Silverman wrote: >>>>>>>>>>>>> Below is the code from the views.py >>>>>>>>>>>>> The405is retunred from the 'return super(DjangoSoapApp, >>>>>>>>>>>>> self).__init__(Application(services, tns))' statement. I am using >>>>>>>>>>>>> python 2.6, soaplib20 and django 1.3. I am struggling to >>>>>>>>>>>>> understand >>>>>>>>>>>>> what exactly is wrong here. >>>>>>>>>>>>> class HelloWorldService(DefinitionBase): >>>>>>>>>>>>> @soap(String,Integer,_returns=Array(String)) >>>>>>>>>>>>> def say_smello(self,name,times): >>>>>>>>>>>>> results = [] >>>>>>>>>>>>> for i in range(0,times): >>>>>>>>>>>>> results.append('Hello, %s'%name) >>>>>>>>>>>>> return results >>>>>>>>>>>>> class DjangoSoapApp(WSGIApplication): >>>>>>>>>>>>> csrf_exempt = True >>>>>>>>>>>>> def __init__(self, services, tns): >>>>>>>>>>>>> """Create Django view for given SOAP soaplib services and >>>>>>>>>>>>> tns""" >>>>>>>>>>>>> return super(DjangoSoapApp, >>>>>>>>>>>>> self).__init__(Application(services, tns)) >>>>>>>>>>>>> def __call__(self, request): >>>>>>>>>>>>> django_response = HttpResponse() >>>>>>>>>>>>> def start_response(status, headers): >>>>>>>>>>>>> django_response.status_code = int(status.split(' ', >>>>>>>>>>>>> 1)[0]) >>>>>>>>>>>>> for header, value in headers: >>>>>>>>>>>>> django_response[header] = value >>>>>>>>>>>>> response = super(DjangoSoapApp, >>>>>>>>>>>>> self).__call__(request.META, >>>>>>>>>>>>> start_response) >>>>>>>>>>>>> django_response.content = '\n'.join(response) >>>>>>>>>>>>> return django_response >>>>>>>>>>>>> # the view to use in urls.py >>>>>>>>>>>>> hello_world_service = DjangoSoapApp([HelloWorldService], >>>>>>>>>>>>> '__name__')- Hide quoted text - >>>>>>>>>>>> - Show quoted text -- Hide quoted text - >>>>>>>>>> - Show quoted text -- Hide quoted text - >>>>>>>> - Show quoted text -- Hide quoted text - >>>>>> - Show quoted text -- Hide quoted text - >>>> - Show quoted text -- Hide quoted text - >> - Show quoted text - -- You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.