[ZPatterns] access denied error

Steve Spicklemire steve@spvi.com
Mon, 13 Aug 2001 03:26:08 -0500


Hi Joachim,

	When you created the ZClass did you click on:

Include standard Zope persistent object base classes?

ZClass.py line 323:

         if zope_object:
             base_classes.append(OFS.SimpleItem.SimpleItem)

zope_object is set only if that checkbox is clicked...

-steve

On Monday, August 13, 2001, at 03:10 AM, Joachim Schmitz wrote:

> More Information:
>
> I exported the old and new ZClasses in xml-Format and did a
>
> diff old new
>
> besides the many differences in the keys string ids, I found only this
> suspicious one:
>
> 139,145c139,144
> <         <global id=3D"48735.1" name=3D"ExtensionClass"=20
> module=3D"ExtensionClass"/>
> <         <tuple id=3D"48735.83">
> <           <string id=3D"48735.2" encoding=3D"repr">RE</string>
> <           <tuple id=3D"48735.6">
> <             <global id=3D"48735.3" name=3D"PersistentClass"=20
> module=3D"ZClasses.ZClass"/>
> <             <global id=3D"48735.4" name=3D"DataSkin"=20
> module=3D"Products.ZPatterns.DataSkins"/$
> <             <global id=3D"48735.5" name=3D"SimpleItem"=20
> module=3D"OFS.SimpleItem"/>
> ---
>>         <global id=3D"47034.1" name=3D"ExtensionClass"=20
>> module=3D"ExtensionClass"/>
>>         <tuple id=3D"47034.63">
>>           <string id=3D"47034.2" encoding=3D"repr">Rechnung</string>
>>           <tuple id=3D"47034.5">
>>             <global id=3D"47034.3" name=3D"PersistentClass"=20
>> module=3D"ZClasses.ZClass"/>
>>             <global id=3D"47034.4" name=3D"DataSkin"=20
>> module=3D"Products.ZPatterns.DataSkins"/$
> 147c146
> <           <dictionary id=3D"48735.7">
> ---
>
> So the working old ZClass has something to do with OFS.SimpleItem, and=20=

> the
> new not working not.
>
>
> On Mon, 13 Aug 2001, Joachim Schmitz wrote:
>
>> Hi Steve,
>>
>> that's not that easy, but more strangeness:
>>
>> I created a ZClass under Zope-2.2.5 exported/imported it into the=20
>> Zope-2.3.3
>> and with this ZClass it also works !!!!
>>
>> The ZPatterns on both installations are ZPatterns-0-4-3b2, the one on
>> Zope-2.3.3 with ZPatterns-stevea-20010204 from Steve Alexander.
>>
>> Any hint, what to check next?
>>
>> On Mon, 13 Aug 2001, Steve Spicklemire wrote:
>>
>>> Hi Joachim,
>>>
>>> 	Strange.. any chance you could pack up one of your "broken" =
cases
>>> (the simpler the better) and post it somewhere that we can poke at =
it?
>>>
>>> thanks,
>>> -steve
>>>
>>> On Monday, August 13, 2001, at 01:36 AM, Joachim Schmitz wrote:
>>>
>>>> Hi Steve,
>>>>
>>>> after some rest during the weekend, back to this issue.
>>>>
>>>> I changed the storage-zclass for this specialist to an "old" =
zclasss,
>>>> which
>>>> was created half a year ago with Zope 2.2, and the problem goes
>>>> away !!!!!
>>>>
>>>> To answer you question below, the objects are stored in ZClasse, =
with
>>>> the
>>>> Base Classes:
>>>> ZObject, _ZClass_for_DataSkin
>>>>
>>>> this is the same for "old" and "new" ZClasses.
>>>>
>>>> On Fri, 10 Aug 2001, Steve Spicklemire wrote:
>>>>
>>>>>
>>>>> Hi Joachim,
>>>>>
>>>>> 	What kind of objects are these? How do they subclass from=20
>>>>> DataSkin?
>>>>>
>>>>> -steve
>>>>>
>>>>> Joachim Schmitz wrote:
>>>>>>
>>>>>> During my search for the cause of this problem, I found a much=20
>>>>>> easier
>>>>>> way to
>>>>>> reproduce it, though to me it makes even more strange.
>>>>>>
>>>>>> I wrote a little pythonscript to list the entries in my Rack:
>>>>>>
>>>>>> ## Script (Python) "listall"
>>>>>> ##bind container=3Dcontainer
>>>>>> ##bind context=3Dcontext
>>>>>> ##bind namespace=3D_
>>>>>> ##bind script=3Dscript
>>>>>> ##bind subpath=3Dtraverse_subpath
>>>>>> ##parameters=3D
>>>>>> ##title=3D
>>>>>> ##
>>>>>>
>>>>>> for I in context.getAllIds():
>>>>>>     item =3D context.getItem(I)
>>>>>>     print I,item.RechnungsNr
>>>>>> return printed
>>>>>>
>>>>>> That pops up the authentication dialog, and if I quit it, I get:
>>>>>>
>>>>>> Traceback (innermost last):
>>>>>>   File
>>>>>> =
/usr/local/ZopePark/ZopeVersions/Zope-2.3.3/lib/python/ZPublisher/Publish.=

>>>>>> py, line 223, in publish_module
>>>>>> ......
>>>>>>   File
>>>>>> =
/usr/local/ZopePark/ZopeVersions/Zope-2.3.3/lib/python/AccessControl/
>>>>>> SecurityManager.
>>>>>> py, line 144, in validate
>>>>>>   File
>>>>>> =
/usr/local/ZopePark/ZopeVersions/Zope-2.3.3/lib/python/AccessControl/
>>>>>> ZopeSecurityPolicy.
>>>>>> py, line 168, in validate
>>>>>> Unauthorized: RechnungsNr
>>>>>>
>>>>>> when I change the print line to:
>>>>>>
>>>>>>     print I,item.faellig
>>>>>>
>>>>>> I get:
>>>>>>
>>>>>> 080101 1970/01/01
>>>>>> 080102 1970/01/01
>>>>>>
>>>>>> So it looks to me it cannot access the value "None", cause I get=20=

>>>>>> the
>>>>>> Unauthorized error only for attributes, which happen to have no=20=

>>>>>> value.
>>>>>>
>>>>>> Mit freundlichen Gr=FC=DFen
>>>>>>
>>>>>> Joachim Schmitz
>>>>>>
>>>>>> AixtraWare, Ing. B=FCro f=FCr Internetanwendungen
>>>>>> H=FCsgenstr. 33a, D-52457 Aldenhoven
>>>>>> Telefon: +49-2464-8851, FAX: +49-2464-905163
>>>>>>
>>>>>> _______________________________________________
>>>>>> ZPatterns mailing list
>>>>>> ZPatterns@eby-sarna.com
>>>>>> http://www.eby-sarna.com/mailman/listinfo/zpatterns
>>>>>
>>>>> _______________________________________________
>>>>> ZPatterns mailing list
>>>>> ZPatterns@eby-sarna.com
>>>>> http://www.eby-sarna.com/mailman/listinfo/zpatterns
>>>>>
>>>>>
>>>>
>>>> Mit freundlichen Gr=FC=DFen
>>>>
>>>> Joachim Schmitz
>>>>
>>>> AixtraWare, Ing. B=FCro f=FCr Internetanwendungen
>>>> H=FCsgenstr. 33a, D-52457 Aldenhoven
>>>> Telefon: +49-2464-8851, FAX: +49-2464-905163
>>>
>>>
>>
>> Mit freundlichen Gr=FC=DFen
>>
>> Joachim Schmitz
>>
>> AixtraWare, Ing. B=FCro f=FCr Internetanwendungen
>> H=FCsgenstr. 33a, D-52457 Aldenhoven
>> Telefon: +49-2464-8851, FAX: +49-2464-905163
>>
>>
>> _______________________________________________
>> ZPatterns mailing list
>> ZPatterns@eby-sarna.com
>> http://www.eby-sarna.com/mailman/listinfo/zpatterns
>>
>
> Mit freundlichen Gr=FC=DFen
>
> Joachim Schmitz
>
> AixtraWare, Ing. B=FCro f=FCr Internetanwendungen
> H=FCsgenstr. 33a, D-52457 Aldenhoven
> Telefon: +49-2464-8851, FAX: +49-2464-905163