[Zope3-Users] formlib problem

Stéphane Brault stephane_brault at yahoo.fr
Wed Apr 19 10:30:09 EDT 2006


Hi again,
 sorry to be a bore ;-)
 I keep on trying to use formlib, I no longer have a problem of adapters for my fields but I get this error:
 2006-04-19T16:13:32 ERROR root C:\Python24\Lib\site-packages\zope\publisher\publish.py line 138 in publish
 => 'result = publication.callObject(request, object)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\app\publication\zopepublication.py line 161 in callObject
 => 'return mapply(ob, request.getPositionalArguments(), request)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\publisher\publish.py line 113 in mapply
 => 'return debug_call(object, args)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\publisher\publish.py line 119 in debug_call
 => 'return object(*args)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 c:\ZopeInst\lib\python\neteven\database\items.py line 43 in getItemEdit
 => 'return ItemsForm(item, self.request).render()'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\formlib\form.py line 733 in render
 => 'self.form_result = self.template()'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\app\pagetemplate\viewpagetemplatefile.py line 83 in __call__
 => 'return self.im_func(im_self, *args, **kw)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\app\pagetemplate\viewpagetemplatefile.py line 51 in __call__
 => "sourceAnnotations=getattr(debug_flags, 'sourceAnnotations', 0),"
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\pagetemplate\pagetemplate.py line 117 in pt_render
 => 'strictinsert=0, sourceAnnotations=sourceAnnotations)()'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tal\talinterpreter.py line 277 in __call__
 => 'self.interpret(self.program)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tal\talinterpreter.py line 352 in interpret
 => 'handlers[opcode](self, args)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceCla
 ss zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tal\talinterpreter.py line 878 in do_defineMacro
 => 'self.interpret(macro)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tal\talinterpreter.py line 352 in interpret
 => 'handlers[opcode](self, args)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tal\talinterpreter.py line 926 in do_extendMacro
 => 'definingName, extending)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tal\talinterpreter.py line 908 in do_useMacro
 => 'self.interpret(macro)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tal\talinterpreter.py line 352 in interpret
 => 'handlers[opcode](self, args)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tal\talinterpreter.py line 538 in do_optTag_tal
 => 'self.do_optTag(stuff)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tal\talinterpreter.py line 523 in do_optTag
 => 'return self.no_tag(start, program)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tal\talinterpreter.py line 518 in no_tag
 => 'self.interpret(program)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tal\talinterpreter.py line 352 in interpret
 => 'handlers[opcode](self, args)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tal\talinterpreter.py line 976 in do_defineSlot
 => 'self.interpret(block)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tal\talinterpreter.py line 352 in interpret
 => 'handlers[opcode](self, args)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tal\talinterpreter.py line 625 in do_insertText_tal
 => 'text = self.engine.evaluateText(stuff[0])'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\app\pagetemplate\engine.py line 101 in evaluateText
 => 'text = self.evaluate(expr)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tales\tales.py line 696 in evaluate
 => 'return expression(self)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tales\expressions.py line 249 in __call__
 => 'v = var(econtext)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tales\expressions.py line 205 in __call__
 => 'return self._eval(econtext)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\tales\expressions.py line 199 in _eval
 => 'return ob()'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\app\pagetemplate\talesapi.py line 73 in title_or_name
 => "return getattr(self, 'title', '') or zapi.name(self.context)"
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\app\traversing\api.py line 149 in getName
 => 'return IPhysicallyLocatable(obj).getName()'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 C:\Python24\Lib\site-packages\zope\interface\interface.py line 682 in __call__
 => 'raise TypeError("Could not adapt", obj, self)'
 ** exceptions.TypeError: ('Could not adapt', <Items at 0x3d7ce30>, <InterfaceClass zope.app.traversing.interfaces.IPhysicallyLocatable>)
 127.0.0.1 - - [19/Apr/2006:16:13:32 +0200] "POST /netevenTest/test/neteven.Accounts.1/ HTTP/1.1" 200 163 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; fr-FR; rv:1.7.12) Gecko/20050919 Firefox/1.0.7"
 
 It seems that retrieving my object from code doesn't give me an address for it, which would cause the problem with IPhysicallyLocatable (my uninformed guess).
 Is there a way to solve the problem, knowing that my object is retrieved through sqlos, and thus has no true address ? There might be something else but being
 quite new to zope 3 (and enjoying it, thanks to you all guys), I can't figure it out.
 
 Thanks,
 
 Stéphane

----- Message d'origine ----
De : Stéphane Brault <stephane_brault at yahoo.fr>
À : user-list zope <zope3-users at zope.org>
Envoyé le : Mercredi, 19 Avril 2006, 4h05mn 07s
Objet : Re : Re : [Zope3-Users] formlib problem

Hi,
  when I use formlib the traditional way (registering the page via ZCML, going to it via the ZMI),
  everything works fine. The problem is I can't access it programatically. The thing I try to do
  is : 
  - call a method via JSON RPC (by the way jsonserver is great ;-)) 
  - in this method I get my object (through sqlos, which is nice too ;-)) and then call the formlib class to render my page in html
  - send back the html which is used to update  my page.
  Has anyone tried to use formlib this way, I really need to use AJAX and it seems that I can't have both working together, 
  I must be missing something.
  
  Thanks,
  
  Stéphane

----- Message d'origine ----
De : Stéphane Brault <stephane_brault at yahoo.fr>
À : zope3-users at zope.org
Envoyé le : Mardi, 18 Avril 2006, 4h16mn 55s
Objet : Re : [Zope3-Users] formlib problem

Thanks Michael,
 There is indeed something missing :
 ComponentLookupError: ((
  zope.schema._bootstrapfields.Int object at 0x01A83610 , 
  zope.publisher.browser.TestRequest instance URL=http://127.0.0.1 ), 
  InterfaceClass zope.app.form.interfaces.IDisplayWidget , u'')
 My problem has nothing to do with containers, since my interface is
 not a container. It seems that zope can't find the adapters for the shema fields, even when 
 I register them by code. I really don't know what to do from now.
 The fact is I use AJAX, so I don't need to register my views, I just
 call them from code to use the generated html as a response to a
 javascript call that then update my page.
 
 Thanks,
 
 Stéphane
 
 

----- Message d'origine ----
De : Michael Howitz <mh at gocept.com>
À : Stéphane Brault <stephane_brault at yahoo.fr>
Cc : user-list zope <zope3-users at zope.org>
Envoyé le : Mardi, 18 Avril 2006, 3h40mn 16s
Objet : Re: [Zope3-Users] formlib problem

Stéphane Brault wrote:
> Hi,
>  I can't use formlib, when I run the example in the form.txt I get this error:
>  Traceback (most recent call last):
>    File "<pyshell#29>", line 1, in -toplevel-
>      print MyForm(None, request)()
>    File "<pyshell#26>", line 6, in __call__
>      widgets = form.setUpWidgets(self.form_fields, 'form', self.context, self.request, ignore_request= ignore_request)
>    File "C:\Python24\Lib\site-packages\zope\formlib\form.py", line 255, in setUpWidgets
>      IInputWidget)
>    File "C:\Python24\Lib\site-packages\zope\component\__init__.py", line 154, in getMultiAdapter
>      raise ComponentLookupError(objects, interface, name)
>  ComponentLookupError: ((, http://127.0.0.1>), , u'')

There seems to be something missing before ", http..." ... did you copy 
it form the browser output?

>  
>  It happens when setUpWidgets is called in the first example, do I need to import something or to configure a component for formlib to work ?
>  Any hint ?

Guess out of the dust: does the interface of the object you want to 
display have a zope.app.container.constraints.containers directive?

This thread seems similar to your problem.
http://mail.zope.org/pipermail/zope3-users/2006-March/002802.html

HTH,
  mac



_______________________________________________
Zope3-users mailing list
Zope3-users at zope.org
http://mail.zope.org/mailman/listinfo/zope3-users



_______________________________________________
Zope3-users mailing list
Zope3-users at zope.org
http://mail.zope.org/mailman/listinfo/zope3-users





More information about the Zope3-users mailing list