Hi Alex,

Fair enough. I submitted it (I think), although I got this message:

"You have successfully created the issue (FB-23715), however you do not have 
the permission to view the created issue.

This is probably because you entered a bug report that details a potential 
security vulnerability - or is related to a non-public component in a 
commercial product."

I do not feel experienced enough to know which categories to submit the bug 
under, but I included source code to reproduce the bug.

Alex, thank you for your continual help to the community.

--Geoff

--- In flexcoders@yahoogroups.com, Alex Harui <aha...@...> wrote:
>
> Please file a bug with a small test case.
> 
> Alex Harui
> Flex SDK Developer
> Adobe Systems Inc.<http://www.adobe.com/>
> Blog: http://blogs.adobe.com/aharui
> 
> From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On 
> Behalf Of Geoffrey
> Sent: Friday, October 30, 2009 1:35 PM
> To: flexcoders@yahoogroups.com
> Subject: [flexcoders] Re: SharedObject problem/bug? Cannot store a subclass 
> of ByteArray.
> 
> 
> 
> 
> Hi Sean,
> 
> Thank you for the link; still no luck. I had tried implementing 
> IExternalizable before, but after reading your article I decided to try 
> again. I have figured out a little more:
> 
> --I can extend, say, a Sprite, and it works fine.
> --When I save the SharedObject, if I use the Sprite-based class, there are 
> two calls to writeExternal(). But for the ByteArray-based class, there is no 
> call to writeExternal().
> --When I load the SO, the constructor for the Sprite-based class gets called. 
> The constructor for the ByteArray-based class does not get called.
> 
> I suspect that Adobe's serialization/deserialization code has something that 
> checks for type ByteArray (e.g., if (x is ByteArray)). On the write-side, it 
> would then call something like writeBytes(), and only call writeExternal() if 
> not a ByteArray. On the read-side, it may do something similar when type 
> casting.
> 
> At this point, I will probably try a workaround for my situation. (E.g., 
> encapsulating the ByteArray) But if anyone gets this to work, I would be 
> interested to know.
> 
> --Geoff
> 
> --- In flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com>, 
> "seanmcmonahan" <sean@> wrote:
> >
> > I'm having a similar problem with a subclass of Dictionary. Unfortunately I 
> > haven't has an opportunity to try this fix yet, but maybe you'll find it 
> > useful: 
> > http://stackoverflow.com/questions/850466/properly-serializing-flash-utils-dictionary-to-a-sharedobject
> >
> > --- In flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com>, 
> > "Geoffrey" <geoffhom@> wrote:
> > >
> > >
> > >
> > > Muzak, thank you for your help. However, I have already tried 
> > > [RemoteClass] (which I mentioned in the original post). I also looked at 
> > > the link that you provided and decided to try more combinations, but none 
> > > worked. I have tried [RemoteClass] with and w/o [Bindable], 
> > > [RemoteClass(alias="ByteArrayPlus")], and I made sure to use my class 
> > > beforehand. In all cases I can get a custom class to retain its type, but 
> > > ByteArrayPlus always gets read as ByteArray from the SharedObject.
> > >
> > > I believe this may be a problem peculiar to ByteArray, but I don't know 
> > > exactly why that would be so.
> > >
> > > Again, the challenge is this: make any class that extends ByteArray, 
> > > write it to a SharedObject (to the disk), read it from the SharedObject, 
> > > and have it retain its class. I know it sounds straightforward, but I 
> > > cannot get it to work.
> > >
> > > --Geoff
> > >
> > > --- In flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com>, 
> > > "Muzak" <p.ginneberge@> wrote:
> > > >
> > > > Add a RemoteClass metadata tag to the custom class:
> > > >
> > > > Example at the bottom of the article
> > > > http://cookbooks.adobe.com/post_How_to_keep_the_type_of_your_objects_when_serializ-8323.html
> > > >
> > > >
> > > > ----- Original Message -----
> > > > From: "Geoffrey" <geoffhom@>
> > > > To: <flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com>>
> > > > Sent: Wednesday, October 28, 2009 12:45 PM
> > > > Subject: [flexcoders] SharedObject problem/bug? Cannot store a subclass 
> > > > of ByteArray.
> > > >
> > > >
> > > > > Hi,
> > > > >
> > > > > I have a subclass of ByteArray (let's call it ByteArrayPlus), which I 
> > > > > want to write to a SharedObject. I can store it fine, but
> > > > > when I read it back, it says it's of type ByteArray, not 
> > > > > ByteArrayPlus. Does anyone have an idea what may be wrong? Has anyone
> > > > > gotten this to work?
> > > > >
> > > > > FYI, I am already using registerClassAlias(). And it works fine with 
> > > > > a custom class, and with a custom class extending another
> > > > > custom class. I also tried implementing IExternalizable, but that did 
> > > > > not help. I also tried [RemoteClass] and
> > > > > [RemoteClass(alias="ByteArrayPlus")].
> > > > >
> > > > > Also, ByteArrayPlus is really simple: I only added a String (name) to 
> > > > > it.
> > > > >
> > > > > This is my first post to FlexCoders.
> > > > >
> > > > > Any help appreciated.
> > > > >
> > > > > --Geoff
> > > > >
> > > >
> > >
> >
>


Reply via email to